Drupal search api і пошук з морфологією

Покрокова інструкція налаштування Search API для пошуку з морфологією.

Хто користується вбудованим в друпал модулем пошуку і з якихось причин не хоче використовувати Search API, тому досить включити модуль Russian stemming і зробити переіндексацію індексу на сторінці admin / config / search / settings. Після цього пошук з морфологією запрацює без додаткової настройки.

Налаштування Search API

Відключаємо модуль Search.

На сторінці admin / config / search / search_api додаємо новий сервер з класом Database service:

Drupal search api і пошук з морфологією

На сторінці admin / config / search / search_api переходимо в налаштування дефолтного індексу:

Drupal search api і пошук з морфологією

Змінюємо сервер на створений раніше і зберігаємо зміни:

Drupal search api і пошук з морфологією

На сторінці admin / config / search / search_api включаємо дефолтний індекс:

На сторінці admin / config / search / search_api переходимо в настройки Workflow у дефолтного індексу:

Drupal search api і пошук з морфологією

У блоці Processors включаємо Russian stemmer:

Drupal search api і пошук з морфологією

На цій же сторінці змінюємо порядок процесорів так, щоб Russian stemmer виявився останнім і зберігаємо зміни:

На сторінці admin / config / search / search_api переходимо по посиланню Status дефолтного індексу:

Запускаємо індексування за допомогою кнопки Index now:

Drupal search api і пошук з морфологією

Після закінчення індексування перевіряємо таблицю search_api_db_default_node_index_body_value. У ній повинні бути слова без закінчень:

Drupal search api і пошук з морфологією

Налаштування Views

Включаємо модуль Search views зі складу Search API.

Створюємо сторінку уявлення з дефолтного індексу і з висновком Rendered entity:

Drupal search api і пошук з морфологією

Додаємо розкритий фільтр Search: Fulltext search

В налаштуваннях фільтра вибираємо оператор Contains any of these words. а в поле Searched fields все поля з індексу, за якими буде відбуватися пошук:

Drupal search api і пошук з морфологією

Drupal search api і пошук з морфологією

Детальніше про Search API:

Написане актуально для Drupal 7 Схожі записи

Drupal search api і пошук з морфологією

Дякую за статтю. Підкажіть а як бути якщо я підключаю модуль search api autocomplete. У мене підтягуються результати - автокомпліт працює. Проблема виникає якщо я фільтрую по термінам - додатково до пошуку. Як зробити щоб в автокомпліт потрапляли тільки дані, Ноди яких пов'язані з обраним терміном. Тобто що то зразок фасетного пошуку.

Drupal search api і пошук з морфологією

Дякую за статтю, в який раз до неї повертаюся.
Але тут виникла маленька проблема:
пошук тупо ігнорує цифру "0". Якщо вводити 100 - знаходить значення в яких є 100, якщо 001 - шукає тільки 1. Просто ввести 0 - все залишається на місці. Через фільтр по заголовкам такої проблеми немає, якщо заголовки брати з індексу нуль не шукає. Грішу на токенайзер, може де пробільні символи що ввести? Підкажіть будь ласка, вже всю голову зламав.

Drupal search api і пошук з морфологією

Хоча якщо токенайзер відключити нічого не змінюється ..

Схожі статті