Доска объявлений Drupal: фасетный поиск с оператором "ИЛИ", но сортировка результатов по наиболее подходящим фасетным критериям / количеству терминов

Я застрял в поиске решения для моей проблемы, и я надеюсь, что вы, возможно, сможете мне помочь.

В общем, я хочу построить небольшую рабочую платформу. Он включает в себя раздел "Исследовать", который похож на страницу поиска с фасетами. Фактические рабочие места могут быть помечены с помощью терминов двух слов "навыки" и "интересы". Грани на странице поиска позволяют пользователю фильтровать вакансии именно по этим навыкам и интересам. Однако я хочу использовать оператор "ИЛИ" для граней, чтобы пользователь получал список с заданиями, которые почти идеально соответствуют его навыкам и интересам, но также и заданиям, которые соответствуют только некоторым из этих терминов.

Итак, здесь вы можете увидеть страницу со списком по умолчанию. Слева находятся Грани для интереса и типа (Оператор "ИЛИ"). Справа вы можете увидеть результирующий набор с заголовком и условиями работы и интересами узла:

Посмотреть изображение страницы Jobsearch Default

Теперь я применяю "Musik" и "Kultur" в качестве фильтров интереса:

Посмотреть изображение Jobsearch с примененными фильтрами

Как видно из набора результатов, оператор OR доставляет все результаты. Тем не менее, я хотел бы отсортировать эти результаты в соответствии с их "актуальностью" соотв. согласно количеству соответствующих критериев. Результаты 4. и 5. соответствуют обоим терминам, выбранным в фасете, но они должны быть указаны перед всеми остальными терминами.

Надеюсь, вы понимаете, чего я хочу достичь. Сначала я начал с Views, чтобы выполнить поставленную задачу, но затем переключился на search_api и SOLR, так как считаю, что в будущем этот подход более совершенствуется.

Вторая цель состоит в том, чтобы пользователь мог сохранить свои индивидуальные интересы и навыки (фильтры, упомянутые выше) в своем профиле пользователя. Здесь пользователь должен увидеть индивидуальные рекомендации по работе на основе своего профиля на своей странице аккаунта.

Так что любые советы, подсказки, хитрости, ссылки очень приветствуются, так как я понятия не имею, нахожусь ли я на правильном пути для решения своих проблем.:)

Роберт

1 ответ

Может быть, этот подход мог бы стать альтернативой: вместо того, чтобы использовать теги в качестве фасетов / фильтров, я мог бы использовать их как поисковый ввод. когда я печатаю свои термины / теги в поле поиска на странице apache-sold-search-search, я получаю именно результаты, отсортированные по их релевантности:

Поиск по тегам вместо фильтрации

Так что, может быть, мне просто нужно сделать небольшой фрагмент кода, который автоматически создает поисковый запрос, основанный на выбранном термине / тегах...

Другие вопросы по тегам