Live search addon for cs-cart

Модуль "Живой поиск"

Модуль "Живой поиск"

Мощный и функциональный набор инструментов для поиска на вашем сайте. Является достойной альтернативой облачным сервисам поиска по сайту, при этом обладая уникальными функциональными возможностями. Основные возможности модуля:

  • Поиск товаров, брендов, категорий, текстовых страниц и продавцов (для редакции multivendor) на вашем сайте;
  • Поиск товаров с возможностью фильтрации результатов поиска по категориям прямо в окне поиска;
  • Навигация по результатам поиска с клавиатуры;
  • Настройки полей, по которым необходимо производить поиск;
  • Исправление опечаток, неверной раскладки или ошибок в написании с помощью встроенного сервиса Yandex Speller;
  • На выбор две предустановленные темы c возможностью смены цветовой схемы каждой из них;
  • Ведение истории поиска с возможностью просмотра в 4-х срезах:
    - по запросам
    - по поисковым фразам
    - по товарам
    - по пользователям
  • Функционал "Синонимы для поиска";
  • Функционал "Стоп-слова";
  • "Мотивация поиска" для стимулирования использования поиска покупателями;
  • Управление поисковыми фразами;
  • Ускорение поиска (путем кластеризации товаров).
Совместимость

Модуль совместим со всей веткой cs-cart 4.x с такими редакциями как CS-Cart, CS-Cart Ultimate, Multivendor, Multivendor Plus, Multivendor Ultimate. На данный момент нет информации о полной несовместимости модуля с какой-либо темой. В случае конфликта модуля с вашей темой обращайтесь в наш центр поддержки.

Модуль будет несовместим с любым другим модулем поиска.
 

Установка модуля

После оформления и оплаты, ваш заказ будет автоматически переведен в статус Оплачен в течение считанных минут. Статус заказа Оплачен означает активацию лицензии и вам на e-mail отправляется письмо с подтверждением о получении оплаты и письмо со ссылкой на скачивание модуля. Так же модуль всегда можно скачать в нашем разделе Управление лицензиями. Для установки модуля на ваш сайт, пожалуйста, выполните следующие шаги:

  1. Скачайте последнюю версию модуля на нашем сайте в разделе "Управление лицензиями" или по ссылке, отправленной по e-mail.
  2. Пройдите в раздел Модули → Управление модулями и в меню шестерёнки выберите Ручная установка.
  3. Выберите ранее скачанный файл и завершите установку модуля.

На этом установка модуля завершена. Для перехода на страницу настроек модуля выберите установленный модуль в разделе Модули → Модули CS-Commerce

Настройки

После установки модуля настройки устанавливаются на значения по умолчанию. Для доступа к настройкам модуля в панели администратора перейдите в раздел Модули → Модули CS-Commerce и из выпадающего списка выберите интересующий вас модуль.

Основные настройки

Выбор объектов поиска

Вкладка основных настроек позволяет выбрать объекты поиска, установить лимиты отображения. Рассмотрим некоторые из данных настройки более детально:

  • "Отображать в конце списка товары, которых нет в наличии" - Включение данной опции позволит принудительно, независимо от выбранной сортировки товаров, товары, которых уже нет в наличии отображать в конце списка.
  • "Автоматически повышать поисковую популярность товару" - Данная опция позволяет повышать ранг товара к конкретному поисковому запросу в автоматическом режиме. Чем больше пользователи кликают на товар из определенной поисковой фразы - тем выше будет отображаться данный товар для этой поисковой фразы. Данная опция работает только для сортировки "По релевантности с учетом популярности"
  • "Отобразить фильтр по категориям на базе результатов поиска" - Включите данную опцию для отображения блока фильтрации результатов поиска по категориям прямо в поисковом окне. Фильтровать можно сразу по нескольким категориям.
  • "Предлагать исправления" - Включите данную опцию для предложения исправлений опечаток, неправильной раскладки и т.д.. Работает на базе сервиса Yandex Speller

Настройки поиска товаров 

В данном разделе настроек представлена возможность выбирать поля, по которым будет осуществляться поиск товаров. Отметьте чекбоксами поля, по которым хотите осуществлять поиск. Если отмечаете поиск по характеристикам - вам будет предложено выбрать конкретные характеристики, по которым нужно осуществлять поиск. 

Дополнительные поля для поиска вынесены в отдельную группу. По ним не будет осуществляться поиск, если включаете функцию "Ускоритель поиска".

Совет: Отмечайте только необходимые поля для поиска. Выбирайте только те характеристики для поиска, которые содежат полезную для покупатля информацию. Чем меньше  отмечено полей для поиска, тем меньше нагрузка на сервер и как следствие результаты поиска отображаются быстрее. 

Группа "Дополнительные настройки" позволяет задать минимальное количество символов для начала поиска товаров, включить автоматическую переадресацию на страницу товара, если в результатах поиска был найден только один товар, блокировать переход пользователя на страницу результатов поиска по нажатию на кнопку "Enter".

Поддерживаемые поля поиска:

  • Название, описание и краткое описание товара;
  • Артикул товара и ID товара;
  • Ключевые слова для поиска;
  • Характеристики и Опции товаров;
  • Мета-заголовок, Мета-описание, Мета-ключевые слова;
  • Поиск по тегам товара

Настройки для Multivendor

Для редакций Multivendor, Multivendor PLUS и Multivendor ULTIMATE будет отображаться дополнительная вкладка настроек. В ней собираются настройки, актуальны только для этих редакций. Можно включить поиск магазинов продавцов и выставить лимит их отображения. Так же можно выставить права на доступ к истории поиска товаров для продавцов.

 

Поиск по витринам

Секция "поиск по витринам" работает для мультивитринных магазинов. Для каждой текущей витрины можно выбрать другие витрины, из которых будут предлагаться найденные категории.

Управление внешним видом

Модуль имеет встроенный редактор стилей с предпросмотром окна результатов поиска. Администратору на выбор предлагается несколько тем отображения поискового окна (Modern и Classic), и также есть возможность менять цветовую палитру выбранной темы. 

Кроме того, в данном разделе настроек, администратор может отобразить или скрыть отдельные элементы поискового окна, такие как:

  • Цена товара
  • Артикул товара
  • Кнопка "Добавить в корзину"
  • Кнопка "Добавить в избранное"
  • Кнопка "В список сравнения"
  • Кнопка "Быстрый просмотр"

История поиска

Данный раздел предназначен для анализа поисковых запросов и анализа пользовательских предпочтений.
История поиска представлена в четырех группах:

  1. Все пользовательские запросы с информацией о пользователе, выбранном языке и меткой времени.
  2. История с группировкой по поисковым фразам. В данном разделе представлены все поисковые фразы с отображением информации о количестве запросов по поисковой фразе и количестве кликов на товары.
  3. История поиска с группировкой по товарам. Будет отображен список товаров, на которые покупатели переходили из посика с данными о кликах на каждый из товаров, сколько и какие поисковые фразы использовались, чтобы данный товар был выбран покупателем.
  4. История поиска по пользователям. Позволяет видеть историю поиска по конкретным пользователи, если пользователь был авторизован. 

Управление Синонимами

Для поисковых фраз или их части вы можете задавать синонимы. Зачастую, одни и те же товары могут иметь разные названия из-за языковых диалектов или сокращений слов. Например, на сайте вы продаете Микроволновые печи, а покупатели зачастую набирают "Микроволновка". Для того, чтобы покупатель в итоге все же увидел Микроволновые печи, нужно добавить синоним для поисковой фразы "Микроволновка". Для одной поисковой фразы вы можете задавать неограниченное количество синонимов. 

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

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

Глобально включать или выключать работу Синонимов в поиске вы можете переключателем, расположенным в верхней части бокового меню.

Управление стоп-словами

В некоторых случаях товары не нужно выводить для некоторых поисковых запросов. Такое часто происходит с короткими поисковыми фразами. Например, на сайте вы продаете и Фен, и Фенол. Таким образом, для поисковой фразы "Фен" выводить товары Фенол не логично. Для того, чтобы такие товары не выводились, вы можете добавить для поисковой фразы "Фен" стоп-слово "Фенол". Для одной поисковой фразы можно добавлять несколько стоп-слов. Стоп-слово это не обязательно одно слово, оно может быть целым словосочетанием или предложением. 

Совет: Не задавайте слишком короткие стоп-слова или слова, которые могут быть частью слова других словосочетаний, т.к. непреднамеренно можете заблокировать релевантные результаты поиска.

Стоп-слова можно добавлять, используя интерфейс панели администратора, а также через импорт/экспорт данных. 

Глобально включать или выключать работу стоп-слов в поиске вы можете переключателем, расположенным в верхней части бокового меню.

Мотивация поиска

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

Включать или выключать работу мотивации поиска вы можете переключателем, расположенным в верхней части бокового меню.

Поисковые фразы

Раздел "Поисковые фразы" предназначен для управления подсказками во время начала набора поисковой фразы в окне поиска, а также для отображения рекомендуемых товаров, заданных администратором для конкретной поисковой фразы. Рекомендуемые товары выводятся вне зависимости от того, релевантны они поисковому запросу или нет.

Задавайте популярные поисковые запросы для вашего сайта и экономьте время ваших покупателей на наборе текста.

Переключатели Включение/Выключение функции подсказок и функции отображения рекомендуемых товаров находится в верхней части бокового меню.

Управлять поисковыми фразами можно используя интерфейс панели администратора, а также через импорт/экспорт данных. 

Ускоритель поиска

Ускоритель поиска предназначен для высконагруженных проектов, у которых товарная база превышает 100 тыс товаров и результаты поиска отдаются ощутимо медленно. Принцип работы ускорителя поиска:

  • Индексация товаров формирует кластеры товаров на базе первых букв всех слов индексируемых полей товара.
  • Размер кластера - это кол-во букв, которые будут формировать кластер. Рекомендуемый параметр для латинской и кириллической раскладки 2.
  • Во время поискового запроса функция ускорителя определяет к каким кластерам соотносится поисковая фраза и ищет товары только в рамках этих кластеров.

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

Ускоритель поиска имеет ограничения по результатам поиска. Он не ищет поисковую фразу в середине или конце слова. Поиск всегда будет работать с учетом первых букв поисковой фразы. Например, если пользователь набирает "amsung", то товары в названии которых есть слово "Samsung" не будут найдены. При этом на запрос "Sams" поиск успешно вернет такие товары. 

Индексация происходит автоматически при изменении товаров в панели администратора, но перед первым включением функции ускорителя запустите индексацию товаров. 

Обновление модуля

Для того, чтобы иметь доступ к обновлениям модуля, у вас должен быть активный период подписки на обновления. При истекшем периоде подписки, вам будут доступны только обновления, выпущенные до даты истечения вашей подписки. Продлить подписку на обновления можно в разделе "Управление лицензиями" на нашем сайте. 

Модуль поддерживает поставку обновлений через Центр обновлений CS-Cart. О выходе новых версий модуля вас оповестит встроенный Центр уведомлений Cart (колокольчик). Обновление модуля с помощью Центра обновлений позволит без потерь настроек данных модуля произвести переход на более новую версию модуля.

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

Обновление модуля через Центр обновлений:

  1. В верхнем меню пройдите в раздел Администрирование → Центр обновлений;
  2. В меню шестеренки нажмите "Проверить доступные обновления"
  3. Cреди списка доступных обновлений найдите нужное и нажмите кнопку Обновить;
  4. Следуйте всем инструкциям, которые будут показаны при процедуре обновления;
  5. Рекомендуется произвести очистку кэша CS-Cart после завершения устанвоки обновлений удалением папки var/cache на вашем сервере или добавлением в адресную строку параметра ctpl (прмиер: https://domain.com/admin.php?ctpl).

Переустановка модуля удалением:

Переустановка модуля означает удаление настроек и данных модуля. Переустановка позволит получить чистую установку модуля. Для переустановки модуля с сохранением настроек и данных, пожалуйста, обратитесь в наш Центр поддержки для оказания такой услуги. 

Для полной переустановки модуля без сохранения данных выполните следующие шаги:

  1. Пройдите в раздел Модули → Управление модулями и найдите старый установленный модуль.
  2. Нажмите в меню шестеренки модуля кнопку удалить.
  3. Скачайте последнюю версию модуля на нашем сайте в разделе "Управление лицензиями".
  4. Пройдите в раздел Модули → Управление модулями и в меню шестеренки выберите Ручная установка.
  5. Выберите ранее скачанный файл и завершите установку модуля.

Техническая поддержка

Техническая поддержка модуля уже включена в его стоимость. Прежде чем обращаться в центр поддержки, пожалуйста, убедитесь что вы используете последнюю выпущенную версию модуля. Старые версии  модуля не обслуживаются технической поддержкой.

Для того, чтобы воспользоваться нашей технической поддержкой, выполните следующие шаги:

  1. На нашем сайте центра поддержки https://helpdesk.cs-commerce.com/ авторизуйтесь под своей учетной записью;
  2. Нажмите на кнопку "Новая заявка";
  3. Заполните все необходимые поля и создайте заявку (Вы получите на e-mail письмо с подтверждением);
  4. Ожидайте ответ специалиста (на ваш e-mail придет уведомление об ответе на вашу заявку) в соответствии с регламентами работы службы техподдержки.

Если Вы не получили ответ в течении сроков, обозначенных в регламентах, напишите нам на e-mail [email protected] сообщение с темой заявки и мы постараемся решить вас вопрос в ближайшее время.

Техническая поддержка по диалогу в чате на сайте, прямым телефонным обращениям или e-mail письмам не осуществляется. Вся помощь проходит через центр поддержки. Внимательно изучайте документацию к модулю и условия технической поддержки перед созданием обращения.

 

Ограничения и предупреждения

Рекомендуем ознакомиться с общими ограничениями:

  1. Фрагменты кода  или некоторые файлы модуля могут иметь закрытую (закодированную) часть. Закодированная часть не создает проблемы в доработке модуля;
  2. Модуль будет работать только на тех доменах, которые указаны в лицензии пользователя. При попытке использования решения на установках CS-Cart, домены которых не включены в лицензию, модуль будет автоматически выключен;
  3. Установка локально не допускается системой лицензирования. Чтобы модуль работал на дополнительном домене (псевдониме) укажите этот псевдоним на странице управления лицензиями. На один домен допускается указать до трех псевдонимов для нужд тестирования и разработки.
  4. Главный домен лицензии вы можете менять самостоятельно на странице управления лицензиями. 
Для доступа к изменению/добавлению доменов и псевдонимов лицензии, подписка на обновления должна быть активной. Для изменения домена лицензии с истекшим периодом подписки, сначала необходимо продлить подписку на обновления. 

 

Для разработчиков

Модуль не поддерживает стандартную работу php хуков cs-cart, поэтому была разработана своя схема подключения, которая вписываеся в стандарты cs-cart.
В модуль встроено 3 хука:

  1. hooks_get_products Передаваемые переменные: 
     $ls_settings - array() настройки модуля
      $company_id -  int() ID текущей витрины
      $params - array() данные из запроса
      $fields - array() получаемые поля
      $join - string() Join таблиц БД
      $condition -  string() условия запроса БД
      $sorting - string() сортировка
      $limit - string() лимит на получение записей из БД
  2. hooks_get_joins Передаваемые переменные: 
     $ls_settings - array() настройки модуля
     $params - array() данные из запроса

      $join - string() Join таблиц БД
  3. hooks_get_conditions Передаваемые переменные:
    $ls_settings - array() настройки модуля
     $params - array() данные из запроса

    $condition -  string() условия запроса БД
  4. hooks_get_fields Передаваемые переменные:
    $ls_settings - array() настройки модуля
    ​​​​​​​$params - array() данные из запроса

    $fields -  array() массив полей 

На примере встроенного модуля my_changes подключимся к хуку hooks_get_products, который расположен непосредственно перед запросом получения товаров:

  1. Создайте файл hooks.post.php в директории модуля app/addons/my_changes/schemas/csc_live_search
  2. Добавьте в массив $schema['developers']['hooks_get_products']['variants'] значение в виде названия, ключ которого является директорией файла с функцией. Пример кода файла hooks.post.php:
    <?php
    if (!defined('BOOTSTRAP')) { die('Access denied'); }
    $schema['developers']['hooks_get_products']['variants']['/app/addons/my_changes/fn_file_name_same_as_function_name.php']='My changes hook function';
    return $schema;
  3. Создайте соотвествующий файл, на который ссылаетесь из файла hooks.post.php и создайте в нем одну функцию, название которой совпадает с названием файла. В нашем случае это fn_file_name_same_as_function_name, принимайте отправляемые переменные и модифицируйте для получения необходимых условий поиска. Пример содержания файла:
    <?php
    if (!defined('BOOTSTRAP')) { die('Access denied'); }
    function fn_file_name_same_as_function_name($ls_settings, $company_id, $params, $fields, $join, &$condition, $sorting, $limit){
    	
    }
  4. Очистите кеш в панели администратора, зайдите в настройки модуля живого поиска в секцию для разработчиков и выберите хук, который вы добавили в селектбоксе. Сохраните настройки.

На этом интеграция с хуком модуля живого поиска завершена. 

История версий

Версия 7.0.8 от 16 августа 2021 года

Что нового:

  • Добавлены дополнительные хуки для разработчиков hoosk_get_fields
  • Добавлен параметр максимальной ширины окна поиска для настольных устройств.
  • Добавлен режим поиска вариаций
  • Мультивендор: добавлена возможность дать доступ для продавцов в историю поиска.

Версия 7.0 от 1 августа 2021 года

Ветка версий модуля 7.x - это новое поколение модуля живого поиска. Изменено все, от внутренней архитектуры модуля, до внешнего вида. Модуль разрабатывался с нуля, опираясь на накопленный опыт старой ветки 5.x, поэтому все предыдущие функции сохранены, и в тоже время добавлены новые. Изменение архитектуры работы модуля позволило добится существенного ускорения работы поиска и неограниченных возможностей по дальнейшему расширению функционала модуля.

Итак, что же нового в версии 7.0:

  1. Фильтрация результатов поиска по категориям прямо в поисковом окне;
  2. Навигация с клавиатуры;
  3. Синонимы поиска;
  4. Возможность выбрать тему (Modern и Classic) и изменения цветовых схем для каждой из них
  5. Встроенный ускоритель поиска (для высоконагруженных проектов);
  6. Мотивация поиска;
  7. Поисковые фразы;
  8. История поиска в разрезе пользователей.
  9. Кнопка быстрого просмотра товара и добавление в список сравнения.