Features
← All features
Housekeeping

Lightning-fast search

Search forgives typos and stays fast on catalogues with hundreds of thousands of items.

Screenshots are coming soon.

A shopper types «snekers» and leaves with an empty result page, even though you stock the item. This plugin connects your shop to a dedicated search service: it forgives typos, answers in milliseconds and does not slow down when the catalogue grows to hundreds of thousands of items.

What it does

  • Forgives typos in the query: «snekers» finds sneakers, «headfones» finds headphones. Whether to forgive is your choice in the settings.
  • Keeps its speed on a large catalogue: suggestions appear while the shopper is still typing.
  • Searches products, sections and brands at once and counts how many matches sit in each section — the shopper sees those numbers in the suggestions.
  • Requires every word of the query to match: «case for iphone» no longer returns your entire case catalogue.
  • Picks up the synonyms from your «Search» section — no need to enter them twice.
  • Loads the catalogue into the service in the background while the shop keeps working.
  • If the service stops answering, the shop quietly searches the usual way with the built-in search: no empty results for the shopper.

What you need

  • A server where an extra service can run (an ordinary VPS is enough, shared hosting is not). The «How to use» tab explains how to start it: one command.
  • Pick this search method in «Settings» → «Search» and load the catalogue into it once.
  • A working task schedule on the server — the background catalogue load runs through it.

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

Плагин подключает магазин к 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