Smart Search Engine — розумний пошук для OpenCart
Модуль протестовано на OpenCart 3.x. Робота на інших версіях не гарантується.
Продаж та технічна підтримка модуля для інтернет-магазинів на території РФ та РБ не здійснюються.
Код модуля не зашифровано, без ionCube чи обфускації. Ви зможете вільно переглядати та змінювати код.
Модуль Smart Search Engine додає в OpenCart 3 та ocStore 3 швидкий і гнучко налаштовуваний пошук товарів на базі Manticore Search. Розширення замінює стандартний механізм пошуку OpenCart, підтримує великі каталоги, багатомовність, пошук за кодами товарів, виправлення помилок, синоніми, підказки, AI-фрази та аналітику поведінки покупців.
Модуль працює на сторінці результатів пошуку та в пошуковому рядку шапки сайту. Передбачена інтеграція зі стандартним шаблоном OpenCart, а також із живим пошуком OCTemplates Promo і OCTemplates Deals.
Важливо: модуль встановлюється тільки на VPS
Smart Search Engine призначений тільки для встановлення на VPS/VDS або виділений сервер. Звичайний віртуальний хостинг без root-доступу та можливості встановлювати системні служби не підтримується.
Для повноцінної роботи потрібно встановити Manticore Search як звичайну системну службу. Рекомендується розміщувати OpenCart і Manticore Search на одному VPS та використовувати локальне підключення.
Модуль не встановлює Manticore Search автоматично. Власник сервера або системний адміністратор повинен установити та запустити Manticore, після чого вказати параметри підключення в налаштуваннях модуля. Докладна інструкція зі встановлення на VPS входить до комплекту.
Резервний SQL-пошук використовується як аварійний механізм у разі недоступності Manticore, але не скасовує вимогу щодо встановлення модуля на VPS.
Як працює модуль
Модуль створює окремий пошуковий індекс товарів. Для кожного товару враховуються магазин, активна мова, статус, наявність, категорії, виробник, атрибути, коди товару та інші вибрані поля.
Дані індексуються пакетами через чергу. Повторне додавання товарів не створює дублікати: наявні записи оновлюються за комбінацією товару, магазину та мови. Видалені або неактуальні товари прибираються з індексу під час повної переіндексації.
Пошуковий запит проходить послідовну обробку: перевірку точного коду, пошук за дозволеною частиною коду, повнотекстовий пошук, синоніми, виправлення розкладки, транслітерацію та fuzzy-пошук. Після знаходження релевантного результату зайві етапи не виконуються.
Що вміє модуль
- Шукати товари через високопродуктивний рушій Manticore Search
- Автоматично використовувати резервний SQL-індекс у разі недоступності Manticore
- Працювати зі стандартною сторінкою пошуку OpenCart
- Працювати з пошуковим рядком у шапці сайту
- Інтегруватися з OCTemplates Promo і Deals
- Шукати за назвою, моделлю, SKU та іншими кодами товару
- Враховувати виробника, категорії, атрибути й опис
- Шукати за ручними та створеними AI пошуковими фразами
- Виконувати точний і частковий пошук за кодами товарів
- Виправляти неправильну EN/RU/UA розкладку клавіатури
- Додавати транслітерований варіант запиту
- Шукати з урахуванням інших активних мов магазину
- Використовувати ручний словник синонімів
- Виправляти друкарські помилки через fuzzy-пошук Manticore
- Показувати підказки безпосередньо в пошуковому рядку
- Виключати з результатів товари, яких немає в наявності
- Гнучко налаштовувати вагу кожного пошукового поля
- Збирати статистику пошукових запитів, переходів і CTR
- Показувати популярні запити та запити без результатів
- Створювати пошукові дані за допомогою OpenAI
- Автоматично оновлювати індекс після змін у каталозі
Поля пошуку
Для кожного поля можна окремо визначити, чи повинно воно брати участь у пошуку. Це дозволяє не додавати в індекс непотрібні дані та налаштувати поведінку модуля відповідно до структури конкретного магазину.
- Назва — основне поле для пошуку товару за його назвою
- Model — модель або внутрішній код товару OpenCart
- SKU — артикул або складський код
- UPC — універсальний код товару
- EAN — європейський товарний код
- JAN — японський товарний код
- ISBN — міжнародний номер книжкового видання
- MPN — заводський номер або код виробника
- Виробник — назва бренду або виробника
- Категорії — назви категорій, до яких належить товар
- Атрибути — назви та значення характеристик товару
- Опис — текст опису товару
- Ключові слова — додаткові пошукові слова товару
- Ручні фрази — задані адміністратором варіанти реальних запитів покупців
- AI-фрази — автоматично створені варіанти запитів для товару
Пошук за кодами товарів
Model, SKU, UPC, EAN, JAN, ISBN і MPN спочатку перевіряються на точне нормалізоване співпадіння. Розділові символи, дефіси, пробіли та регістр не заважають знайти потрібний товар.
Наприклад, запити K-953156, K953156 і k 953156 можуть бути розпізнані як один код.
Для кожного кодового поля передбачене окреме налаштування часткового пошуку. Якщо покупці часто вводять тільки частину моделі або артикула, можна дозволити пошук за фрагментом для Model, SKU, UPC, EAN, JAN, ISBN або MPN.
Частковий пошук рекомендується вмикати тільки для тих полів, де покупці справді використовують неповні значення. Надто короткі фрагменти можуть давати багато нерелевантних результатів.
Обробка пошукового запиту
- Режим збігу визначає, чи повинні бути знайдені всі слова запиту або після нульового строгого результату можна шукати товари хоча б за одним словом
- Мінімальна довжина слова відсіює надто короткі слова, які можуть створювати велику кількість нерелевантних збігів
- Виправлення розкладки перетворює текст, введений у неправильній EN/RU/UA розкладці
- Транслітерація створює латинський варіант кириличного запиту або кириличний варіант латинського введення
- Пошук іншими мовами дозволяє знайти товар, навіть якщо покупець використовує іншу активну мову магазину
- Синоніми розширюють запит заданими вручну словами та фразами
- Fuzzy-пошук знаходить слова з допустимою кількістю друкарських помилок
- Відстань помилки визначає, скільки вставок, видалень або замін символів допускається під час fuzzy-пошуку
Словник синонімів
У модулі передбачений власний словник синонімів. Для кожного запису можна вибрати мову, початкове слово, синонім і тип правила.
- Одностороннє правило — заміна або розширення працює тільки від початкового слова до синоніма
- Двостороннє правило — обидва слова можуть використовуватися як взаємні синоніми
- Усі мови — правило застосовується незалежно від поточної мови вітрини
Аналітика запитів без результатів допомагає знаходити відсутні варіанти написання та швидко створювати для них нові синоніми.
Налаштування ранжування
Для кожного пошукового поля можна задати окрему вагу. Чим більше значення, тим сильніше збіг у цьому полі впливає на позицію товару в результатах.
- Вага назви товару
- Вага Model
- Вага SKU
- Вага UPC
- Вага EAN
- Вага JAN
- Вага ISBN
- Вага MPN
- Вага виробника
- Вага категорій
- Вага атрибутів
- Вага ключових слів
- Вага ручних пошукових фраз
- Вага AI-фраз
- Вага опису товару
Точні збіги кодів мають окремий високий пріоритет. Наприклад, точний Model або SKU не загубиться серед товарів, у назвах чи описах яких випадково зустрічаються схожі слова.
Manticore Search і продуктивність
Manticore Search використовується як основний високопродуктивний рушій. Він зберігає підготовлені пошукові документи окремо від основних таблиць OpenCart та дозволяє швидко обробляти повнотекстові запити у великих каталогах.
- Окрема назва таблиці Manticore для кожного сайту
- Можливість використовувати один сервер Manticore для декількох магазинів
- Автоматичне створення таблиці індексу
- Автоматичне оновлення структури таблиці під час оновлення модуля
- Перевірка підключення безпосередньо з адміністративної частини
- Перегляд версії Manticore та кількості документів
- Безпечне видалення вибраної таблиці перед зміною її назви
- Пакетна індексація товарів
- Повторне використання одного підключення до Manticore під час обробки пакета
- Пакетне завантаження описів, категорій, атрибутів, фільтрів і пошукових фраз
- Відсутність дублювання документів під час повторної індексації
Розмір пакета індексації налаштовується в адміністративній частині. Для потужного VPS можна збільшити кількість товарів за один запуск, а для сервера з обмеженими ресурсами — зменшити.
Індекс і черга
Первинна та повна індексація виконується через чергу. Можна додати весь каталог, обробляти завдання пакетами, повторно запускати невдалі завдання та очищати чергу.
- Додавання всіх товарів до черги
- Ручна обробка налаштованої кількості товарів
- Перегляд завдань із пагінацією
- Локалізовані статуси завдань
- Перегляд тексту помилки
- Повторний запуск невдалих завдань
- Видалення окремого завдання
- Повне очищення черги
- Захист кнопок від випадкового повторного натискання
Модуль використовує атомарне отримання завдань. Якщо декілька обробників запускаються одночасно, одне й те саме завдання не повинно оброблятися повторно.
Автоматичне оновлення індексу
Модуль використовує стандартні події OpenCart та додає товар до черги після змін у каталозі.
- Додавання або редагування товару
- Видалення товару
- Зміна категорій
- Зміна виробника
- Зміна атрибутів
- Зміна залишку товару після оновлення історії замовлення
Прямі SQL-запити та деякі сторонні імпорти можуть не викликати події OpenCart. Після масового прямого імпорту рекомендується додати всі товари до черги та виконати повну переіндексацію.
AI-генерація пошукових даних
За наявності API-ключа OpenAI модуль може створювати для товарів додаткові пошукові фрази, ключові слова, варіанти назв та запити покупців. AI-функції є додатковими: основний пошук і Manticore працюють без підключення OpenAI.
- Використання OpenAI Responses API та структурованої відповіді
- Вибір моделі сімейства GPT-5.6
- Окреме налаштування даних, які передаються AI
- Передавання назви, Model, SKU, UPC, EAN, JAN, ISBN і MPN
- Передавання виробника, категорій, атрибутів та опису
- Генерація даних окремо для кожної активної мови товару
- Обробка AI-завдань через окрему чергу
- Налаштовувана кількість товарів за один запуск
- Додавання всіх товарів до AI-черги
- Відбір товарів вручну
- Відбір товарів за категорією
- Відбір товарів за виробником
- Додавання вибраних товарів до AI-черги зі сторінки каталогу
- Генерація AI-фраз безпосередньо на сторінці редагування товару
- Перегляд і ручне редагування створених фраз
- Очищення AI-даних окремого товару
- Перегляд AI-черги з пагінацією
- Повторний запуск або видалення окремого AI-завдання
- Повне очищення AI-черги
AI не змінює та не видаляє ручні пошукові фрази. Ручні й автоматично створені дані зберігаються окремо. Наступна AI-генерація замінює тільки попередній список AI-фраз відповідного товару та мови.
Використання OpenAI API може оплачуватися окремо відповідно до тарифів власника API. API-ключ та доступ до підтримуваної моделі користувач отримує самостійно.
Журнал і перегляд результатів AI
У модулі передбачений окремий журнал AI-операцій. Для кожного завдання зберігаються товар, мова, модель, статус, тривалість, кількість створених фраз, дата виконання та повідомлення про помилку.
- Перегляд даних, переданих AI
- Перегляд структурованої відповіді AI
- Читабельне модальне вікно замість необробленого JSON
- Окреме відображення ключових слів, фраз і варіантів назв
- Список товарів зі створеними AI-фразами
- Перегляд фраз за всіма мовами товару
- Пагінація списку та журналу
- Очищення журналу AI
Аналітика пошуку
Модуль збирає статистику пошукових запитів і допомагає зрозуміти, що шукають покупці та які запити потребують додаткового налаштування.
- Текст пошукового запиту
- Кількість виконаних пошуків
- Середня кількість знайдених товарів
- Кількість переходів на сторінки товарів
- CTR пошукового запиту
- Дата останнього пошуку
- Окремий список популярних запитів
- Окремий список запитів без результатів
- Пагінація списків
- Сортування за запитом, кількістю пошуків, середнім результатом, переходами та CTR
- Швидка перевірка запиту на вітрині
- Створення синоніма на основі запиту без результатів
- Налаштовуваний термін зберігання статистики
- Повне очищення аналітики
Переходи та CTR враховуються як зі стандартної сторінки результатів, так і з пошукового рядка в шапці сайту, включно з підтримуваними шаблонами OCTemplates.
Мультимовність і мультимагазин
Індекс формується окремо для кожного магазину та активної мови. Один товар може мати декілька пошукових документів, якщо він використовується в декількох магазинах або має описи кількома мовами.
Пошук враховує поточний магазин і мову користувача. За необхідності можна дозволити пошук за даними інших мов, наприклад знайти товар на українській вітрині за російським або англійським запитом.
Адміністративна частина та статуси модуля локалізовані українською, англійською та російською мовами.
CRON і ручна обробка
Основні операції можна запускати вручну кнопками в адміністративній частині. Для великих каталогів і регулярного автоматичного оновлення також передбачені захищені секретним ключем URL для індексної та AI-черги.
- Окремий URL для обробки індексної черги
- Окремий URL для обробки AI-черги
- Готові команди для crontab
- Налаштовувана кількість завдань за один запуск
- Можливість повністю працювати вручну через кнопки адміністративної частини
Переваги
- Швидкий пошук у великих каталогах
- Висока релевантність результатів
- Точний пріоритет кодів товарів
- Гнучке керування пошуковими полями та їхньою вагою
- Підтримка помилок, неправильної розкладки та транслітерації
- Власний словник синонімів
- Автодоповнення в пошуковому рядку
- Інтеграція зі стандартним шаблоном, OCTemplates Promo та Deals
- Автоматичне оновлення індексу після стандартних змін у каталозі
- Пакетна обробка без створення дублікатів
- Резервний SQL-пошук у разі помилки Manticore
- AI-генерація додаткових пошукових фраз
- Повноцінна аналітика запитів, переходів і CTR
- Докладна вбудована довідка з поясненнями всіх налаштувань
Системні вимоги
- VPS/VDS або виділений сервер
- Root або sudo-доступ для встановлення Manticore Search
- OpenCart 3.x або ocStore 3.x
- PHP-версія, сумісна з установленою версією OpenCart 3
- MySQL або MariaDB
- Установлений і запущений Manticore Search
- Доступ до SQL-порту Manticore, стандартно 9306
- Можливість налаштувати Cron — за потреби автоматичної обробки
- API-ключ OpenAI — тільки для використання AI-функцій
Shared hosting, звичайний віртуальний хостинг без root-доступу та сервери, на яких заборонено встановлення Manticore Search, не підтримуються.
Сумісність
- OpenCart 3.x
- ocStore 3.x
- Стандартний шаблон OpenCart
- OCTemplates Promo
- OCTemplates Deals
- Українська, англійська та російська локалізації
Встановлення
- Підготуйте VPS/VDS із root або sudo-доступом
- Установіть Manticore Search як системну службу
- Переконайтеся, що Manticore працює та приймає локальні підключення на порту 9306
- Завантажте архів модуля через Extensions / Installer
- Перейдіть у Extensions / Modifications та натисніть Refresh
- Перейдіть у Extensions / Extensions
- Виберіть тип розширень Modules / Модулі
- Знайдіть Smart Search Engine та натисніть Install
- Відкрийте налаштування модуля та перевірте з’єднання з Manticore
Важливі примітки
Після зміни набору полів, які входять до індексу, потрібно виконати повну переіндексацію. Зміна ваги полів, режиму збігу, синонімів або параметрів обробки запиту не створює нові документи та зазвичай не потребує повторної індексації.
Перед зміною назви таблиці Manticore рекомендується видалити стару таблицю через відповідну кнопку модуля, зберегти нову назву та виконати повну переіндексацію.
Якщо використовується сторонній імпорт, який змінює дані прямими SQL-запитами, після завершення імпорту потрібно вручну додати весь каталог до черги.
Модуль продається для використання на VPS. Перед придбанням переконайтеся, що маєте root/sudo-доступ і можете встановити Manticore Search. Повернення коштів через відсутність відповідного сервера або неможливість установити системну службу не передбачається.
Ліцензія
Ліцензія поширюється на один домен і його піддомени.
ocStore 3.x
Англійська
Російська
Англійська
Російська
OCTemplates Promo
OCTemplates Deals
PHP 8.0-8.3
Немає відгуків про цей товар, станьте першим, залиште свій відгук.