Можливості
← До всіх можливостей
Службові

Блискавичний пошук

Пошук пробачає помилки й лишається швидким на каталозі в сотні тисяч товарів.

Знімки екрана скоро з’являться.

Покупець пише «кросівкі» з помилкою — і йде з порожньої видачі, хоча товар у вас є. Плагін підключає магазин до окремої пошукової служби: вона пробачає помилки, відповідає за мілісекунди й не сповільнюється, коли каталог виростає до сотень тисяч позицій.

Що робить

  • Пробачає помилки в запиті: «кросівкі» знаходять кросівки, «навушнеки» — навушники. Пробачати чи ні — ваш вибір у налаштуваннях.
  • Тримає швидкість на великому каталозі: підказка встигає з'явитися, поки покупець друкує.
  • Шукає одразу за товарами, розділами й брендами та сам рахує, скільки знайденого лежить у кожному розділі — ці числа покупець бачить у підказці.
  • Вимагає, щоб збіглися всі слова запиту: за «чохол для айфона» не приїжджає весь каталог чохлів.
  • Забирає ваші синоніми з розділу «Пошук» — задавати їх удруге не потрібно.
  • Завантажує каталог у службу у фоні, магазин при цьому продовжує працювати.
  • Якщо служба не відповідає, магазин мовчки шукає як раніше, вбудованим пошуком: покупець не побачить порожню видачу.

Що потрібно для роботи

  • Сервер, де можна запустити додаткову службу (звичайний VPS підійде, шаред-хостинг — ні). Як її підняти, написано у вкладці «Як користуватися»: одна команда.
  • Обрати цей спосіб пошуку в «Налаштування» → «Пошук» і один раз завантажити туди каталог.
  • Робочий розклад завдань на сервері — ним іде фонове завантаження каталогу.

Молниеносный поиск — как поднять поисковый сервис

Плагин подключает магазин к Meilisearch — небольшой поисковой службе, которая живёт на вашем же сервере. Она занимает несколько сотен мегабайт памяти, запускается одной командой и не требует обслуживания.

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

Что понадобится

  • Сервер с root-доступом (обычный VPS — этого достаточно).
  • 1 ГБ свободной памяти и место под индекс: примерно как треть от объёма каталога в базе.
  • 10 минут.

Шаг 1. Придумайте ключ доступа

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

openssl rand -hex 32

Сохраните её — этот же ключ вы впишете в настройках плагина.

Шаг 2. Запустите службу

Вариант А. Docker (проще всего)

docker run -d --restart unless-stopped \
  --name meilisearch \
  -p 127.0.0.1:7700:7700 \
  -e MEILI_MASTER_KEY='ВАШ_КЛЮЧ' \
  -e MEILI_ENV=production \
  -v /var/lib/meilisearch:/meili_data \
  getmeili/meilisearch:v1.11

Вариант Б. Без Docker (systemd)

curl -L https://install.meilisearch.com | sh
sudo mv ./meilisearch /usr/local/bin/
sudo useradd -d /var/lib/meilisearch -s /bin/false -m meilisearch

sudo tee /etc/systemd/system/meilisearch.service >/dev/null <<'UNIT'
[Unit]
Description=Meilisearch
After=network.target

[Service]
User=meilisearch
Group=meilisearch
ExecStart=/usr/local/bin/meilisearch \
  --db-path /var/lib/meilisearch/data \
  --http-addr 127.0.0.1:7700 \
  --env production \
  --master-key ВАШ_КЛЮЧ
Restart=always

[Install]
WantedBy=multi-user.target
UNIT

sudo systemctl daemon-reload
sudo systemctl enable --now meilisearch

Важно: адрес 127.0.0.1 означает, что служба доступна только самому серверу. Наружу её открывать не нужно — иначе ваш каталог сможет скачать кто угодно.

Проверьте, что служба поднялась:

curl -H "Authorization: Bearer ВАШ_КЛЮЧ" http://127.0.0.1:7700/health
# {"status":"available"}

Шаг 3. Включите плагин в магазине

  1. «Настройки» → «Плагины» → «Молниеносный поиск»: впишите адрес (http://127.0.0.1:7700) и ключ доступа.
  2. «Настройки» → «Поиск» → способ поиска: выберите «Молниеносный поиск».
  3. Там же нажмите «Пересобрать» — каталог уедет в поисковую службу. На большом каталоге это несколько минут, магазин продолжает работать.

Дальше индекс поддерживается сам: сохранили товар — он обновился в поиске.

Если что-то пошло не так

  • Магазин ищет по-старому. Значит, служба не ответила. Магазин в такой ситуации молча возвращается на встроенный поиск, чтобы покупатель не увидел пустую выдачу. Проверьте curl … /health и запись в журнале магазина.
  • «Ничего не найдено» на весь каталог. Каталог ещё не загружен в службу: нажмите «Пересобрать» в разделе «Поиск».
  • Служба съедает много памяти. Это нормально при загрузке каталога; после неё расход падает. Если памяти мало, загружайте каталог ночью.

Обновление и резервные копии

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

1.0.0 30.07.2026