Вы здесь

Как Search API научить искать по точному совпадению нескольких слов?

0

Вообще вопрос заключается в следующем. Как сделать поиск на сайте так, чтобы в случае простого запроса он разбивал слова, делал стемминг и прочее... А если взять запрос в кавычки, то он искал только точные совпадения.

Что делал:

Сначала использовал search_api_db для поиска. У него во вьюшке в "Настройках поля фильтра" и в "Настройках запроса" есть куча всяких настроек. Но как бы я с ними не игрался, такого результата как изложил выше не получилось. Потом где-то нагуглил, что не умеет поиск с базой данных в качестве сервера таких вещей.
Вспомнил, что есть Apache Solr, развернул его на виртуалке. Подключил модули. Настроил сервер. Проиндексировал. Но он на мой взгляд ищет ещё хуже чем по базе данных... Там куча нерелевантных запросов. У нас СМИ, и тут было дело главред искал по такому запросу "дом Бока". В индексе овер 20000 материалов. В случае с сервером по базе данных он находит всего 25 результатов в которых есть оба слова (или их вариации, но обязательно чтобы они оба там были). А случае с Solr у меня получилось настроить только так что он ищет любое из них или любая из вариаций... Даже если там будет одно только слово "боком" он найдет.

Я знаю, что для Solr есть XML конфигурации, свои там. Есть нормальные для русского языка?

Версия Drupal: 
7.x
Вопрос задан 31.08.2018 - 13:36

Подпишусь на вопрос =)
Я использую Search API DB
И например есть нода с заголовком Настройка клише для печати чека
Если я буду искать так: "настройка чека" (именно в кавычках)
То у меня только такая нода и найдётся

Комментарий оставлен 14.09.2018 - 13:24

Ответы