Покупатель открывает интернет-магазин, вводит в поиске «футболко» и получает пустую страницу. Товар «Футболка белая с принтом» есть в каталоге, но стандартный поиск не распознаёт ошибку в одном символе. Для посетителя результат простой: он решает, что нужного товара нет, и уходит.
Такая же ситуация возникает, если запрос набран в неправильной раскладке, русское название введено латиницей или покупатель использует привычное ему слово, которое отличается от названия в каталоге.
Умный поиск - помогает находить товары по неточным запросам, выводит результаты прямо под поисковой строкой и показывает владельцу магазина, что именно ищут покупатели.
Почему стандартного поиска бывает недостаточно
Обычный поиск хорошо работает, когда покупатель вводит слово так же, как оно записано в карточке товара. Но реальные запросы редко бывают идеальными:
-
«футболко» вместо «футболка»;
-
futbolkaвместо «футболка»; -
текст в неправильной раскладке;
-
«плакат» вместо используемого в каталоге слова «постер»;
-
неполное слово или только часть артикула;
-
бытовое название вместо официального названия товара.
Пустая выдача в таких случаях не означает, что в магазине нет подходящего товара. Она означает, что поисковая система не смогла связать запрос покупателя с данными каталога.
Задача умного поиска — понять намерение пользователя настолько, насколько это возможно без ручного перебора всех вариантов написания.
Автоматическое исправление опечаток
Модуль формирует поисковый словарь на основе товаров выбранного магазина и языка. Если покупатель допускает ошибку, система ищет ближайшее подходящее слово в актуальном индексе.
Например:
футболко → футболка
футблока → футболка
Допустимое количество ошибок настраивается администратором. Это позволяет подобрать баланс между исправлением запросов и слишком свободным совпадением разных слов.
Исправленный вариант отображается в строке «Возможно, вы искали». Покупатель понимает, какой запрос использовала система, и сразу видит подходящие товары.
Исправление неправильной раскладки
Человек может забыть переключить язык клавиатуры и набрать русское слово английскими клавишами. Стандартный поиск воспринимает такую строку как набор неподходящих символов.
Умный поиск проверяет альтернативную раскладку и использует преобразованный запрос, если соответствующее слово существует в индексе текущего магазина и языка.
Проверка по индексу необходима, чтобы модуль не предлагал бессмысленное исправление для каждого введённого текста.
Поиск по транслитерации
Модуль поддерживает двустороннюю транслитерацию. Покупатель может написать русское название латиницей:
futbolka → футболка
Поддерживаются распространённые сочетания sh, shch, ch, zh, kh, ts, ya, yu, yo и другие варианты.
Преобразованный запрос используется только после проверки словаря или поискового индекса. Благодаря этому транслитерация помогает найти реальный товар, а не создаёт случайные предложения.
Также поддерживается совместная обработка транслитерации и опечатки. Это полезно, когда пользователь одновременно пишет слово латиницей и допускает ошибку.
Синонимы и обязательные исправления
Автоматический алгоритм не может заранее знать все особенности конкретного магазина. Для этого в настройках предусмотрены собственные правила.
Синонимы
Синонимы связывают разные названия одного типа товара:
постер => плакат
кроссовки => кеды, sneakers
смартфон => телефон
Такие правила работают в обе стороны. Покупатель может использовать любое привычное ему название.
Обязательные исправления
Обязательное исправление заменяет конкретный ошибочный запрос на правильный:
фуболка => футболка
айфонн => айфон
кампрессор => компрессор
Это односторонние правила. Они подходят для частых ошибок, особого написания брендов, сокращений и терминов, характерных именно для вашего ассортимента.
Подсказки с товарами во время ввода
Покупателю не обязательно переходить на отдельную страницу и ждать полной загрузки результатов. Модуль выводит товары в раскрывающемся списке прямо под строкой поиска.
В подсказке могут отображаться:
-
изображение товара;
-
название;
-
артикул;
-
актуальная цена;
-
исправленный вариант запроса;
-
количество найденных товаров;
-
ссылка на полную страницу результатов.
Цена рассчитывается с учётом комбинации товара, действующих скидок и налогов. Это важно для товаров, у которых базовая цена отличается от фактической цены продаваемого варианта.
Модуль может выводить собственную поисковую форму или подключаться к стандартному полю темы. Если активен штатный модуль ps_searchbar, система предотвращает повторный вывод второй одинаковой строки.
Какие данные участвуют в поиске
Владелец магазина самостоятельно выбирает область поиска. В индекс можно включить:
-
название товара;
-
артикул товара;
-
артикулы комбинаций;
-
производителя;
-
категории;
-
характеристики;
-
атрибуты комбинаций;
-
теги;
-
краткое и полное описание.
Не каждому магазину нужен поиск по всем полям. Например, для магазина запчастей особенно важны артикулы и характеристики, а для магазина одежды — название, категория, бренд, цвет и размер.
После изменения области поиска необходимо перестроить индекс, чтобы новые настройки применились к существующим товарам.
Настройка релевантности
Сам факт совпадения ещё не означает, что товар должен стоять первым. Совпадение в названии обычно важнее упоминания слова в длинном описании, а точный артикул должен иметь высокий приоритет.
В модуле предусмотрены отдельные веса для каждого поискового поля. Администратор может самостоятельно определить важность названия, артикула, производителя, категорий, характеристик, атрибутов, тегов и описания.
Дополнительно можно:
-
повысить позиции товаров в наличии;
-
дать преимущество товарам с изображением;
-
задать ручной коэффициент конкретному товару;
-
повысить приоритет категории или производителя;
-
исключить товары без остатка;
-
скрыть недоступные для заказа товары;
-
исключить товары без цены.
Так поиск становится не только техническим инструментом, но и способом управлять товарной выдачей.
Полная страница результатов и сортировка
Если покупателю недостаточно выпадающих подсказок, он может открыть полную страницу результатов.
Доступна сортировка:
-
по релевантности;
-
по названию;
-
по возрастанию цены;
-
по убыванию цены.
При сортировке учитывается фактическая цена товара, включая комбинации, специальные цены, скидки и налоги. Товар не должен оказываться в неправильной позиции только потому, что его базовая цена отличается от цены доступной комбинации.
История поиска покупателя
При повторном открытии строки посетитель видит недавние запросы. Это позволяет быстро вернуться к ранее просмотренному разделу каталога.
Покупатель может:
-
удалить отдельный запрос;
-
полностью очистить историю поиска.
История относится к конкретному посетителю и не смешивается с общей аналитикой магазина.
Популярные запросы и поиск без результатов
Поиск полезен не только покупателю. Он показывает владельцу магазина реальный спрос.
В панели управления доступны популярные запросы за последние 30 дней. Для каждого запроса отображаются количество обращений и среднее число найденных результатов.
Отдельный отчёт содержит запросы, по которым товары не были найдены. Он помогает понять:
-
какого товара не хватает в ассортименте;
-
какое название следует добавить в карточку;
-
для какого слова нужен синоним;
-
какую частую ошибку стоит добавить в обязательные исправления;
-
почему покупатели не могут найти существующий товар.
Вместо предположений владелец магазина получает реальные формулировки посетителей.
Индексация и cron
Для быстрого поиска модуль создаёт отдельный индекс товаров. Первую полную индексацию необходимо запустить после установки.
В дальнейшем индекс автоматически обновляется при изменении:
-
товара;
-
комбинации;
-
артикула;
-
остатка.
Для больших каталогов предусмотрена пакетная индексация через cron. Каждый запуск продолжает обработку с сохранённой позиции, поэтому каталог не приходится индексировать с начала.
Cron также удаляет устаревшие записи индекса и старую поисковую статистику. Это не позволяет служебным таблицам бесконтрольно увеличиваться со временем.
После массового импорта товаров напрямую в базу данных рекомендуется выполнить полную переиндексацию.
Мультимагазин и несколько языков
Индекс создаётся отдельно для каждого магазина и языка. Товары, словари, правила и статистика разных витрин не смешиваются.
Например, запрос в русской версии магазина проверяется по русскому индексу, а английский запрос — по данным английской версии каталога.
Интерфейс модуля переведён на русский и английский языки. Поиск может работать и с другими языками каталога, но качество автоматических исправлений зависит от слов, содержащихся в товарах выбранного языка, и от настроенных администратором правил.