Решение проблем
С чего начать
Откройте Индексация и проверка → Проверить выдачу и повторите точный запрос. Затем проверьте его в нужной форме сайта под тем же пользователем. Запишите версию модуля, выбранный каталог, запрос, ожидаемый товар/раздел и сообщение после сохранения или индексации.
Проверка в админке помогает отделить состав индекса от фильтров и оформления компонента, но выдачи под разными правами могут различаться.
Class "CCatalogSku" not found при сохранении
Ошибка подтверждена в 1.0.0 на стандартной странице настроек Битрикса при выключенных подключениях магазина и CRM. Причина — обращение к классу торговых предложений до подключения модуля catalog.
Установите 1.0.1 либо предоставленный разработчиком пакет zorka.search-1.0.1-hotfix-settings.zip: после резервного копирования замените lib/admin/settings.php и install/version.php внутри /bitrix/modules/zorka.search/. Заново откройте настройки и сохраните выбор. Порядок обновления.
В 1.0.1 зависимость загружается явно до работы с SKU. Исправление проверено через стандартную и отдельную страницы настроек, с выключенными интеграциями и в свежем PHP-процессе. Переиндексация только из-за этого исправления не нужна.
Если вместо ошибки класса показано «Не удалось загрузить модуль „Торговый каталог“», проверьте установку и доступность модуля catalog; сохранение остановлено до изменения выбранных каталогов и полей.
Инфоблока или свойства нет в настройках
- Для инфоблока проверьте штатные галочки индексации элементов и разделов: при обеих выключенных он скрыт.
- Для свойства товара проверьте активность, Значения свойства участвуют в поиске и поддерживаемый тип.
- Для пользовательского поля раздела проверьте Участвует в поиске и тип поля.
- Отключённая индексация разделов скрывает их поля даже при включённом поиске товаров.
После включения данных сохраните настройки и переиндексируйте нужный тип. Поля и режимы.
Галочки возвращаются после сохранения
Прочитайте сообщение вверху страницы: ошибка проверки может отменить всё сохранение. Инфоблок предложений с полностью выключенным штатным поиском в текущей версии пропускается автоматически. Убедитесь, что действительно загружены файлы новой версии.
Большая форма с JavaScript отправляет настройки упакованными. При выключенном JavaScript обычная форма зависит от PHP max_input_vars; неполные данные отклоняются, чтобы не потерять настройки. Порядок обновления.
Раздел «Тепловые пушки» не находится по «пушки»
- Проверьте выбранный инфоблок и штатную индексацию разделов.
- Убедитесь, что раздел и родители активны и доступны пользователю.
- Включите Название категории, задайте По словам или Частичное совпадение.
- Если поле только включили, завершите проход Только разделы в самом модуле.
- Проверьте выдачу в админке, затем ограничения и лимит компонента сайта.
Если в товаре написано «пушка», запрос «пушки» не обязан совпасть: морфологии нет. Помогут синонимы.
Товар показывается, хотя слово есть только в разделе
Во всплывающем поиске это предусмотренное поведение: когда найдены только разделы, к ним добавляются товары и товары подразделов. Такие товары не обязаны совпадать с запросом по названию. Правила подсказок.
Отключённое Название категории исключает это поле, но у раздела могут совпадать синонимы или другие включённые поля. Проверьте их. Если собственная проверка не даёт совпадения, а сайт показывает его, проверьте фактический компонент, подключение магазина, сторонний шаблон и кеш.
Не различаются 000123 и 123
Проверьте исходный тип свойства: числовое поле могло потерять нули до индексации. Для кодов используйте строковый тип и Точное значение. В частичном режиме 123 закономерно встречается внутри 000123. После изменения исходных данных обновите индекс.
passat-150 находится на полной странице, но не в подсказках
Проверьте фактический компонент поиска в шапке. Для arturgolubev:search.title используйте zorka.search 0.1.28 или новее: модуль сохраняет исходный запрос вместо варианта с удалёнными знаками. Переиндексация для этого исправления не нужна. Если проблема остаётся, сравните фильтры каталогов, права, лимит и выдачу в проверке модуля. Совместимость подсказок.
passat 150 не находит PASSAT-150
Нужна версия 0.1.30 или новее. На вкладке Сортировка поиска у товара включите Название и выберите Частичное совпадение, затем сохраните. Если название уже было в индексе, перестраивать его не нужно. Если поле только включили, переиндексируйте товары. Запись без разделителя — passat150 — автоматически равнозначной не становится. Режимы совпадения.
Новые товары не появляются
Проверьте очередь Ожидают обновления, выбранные каталоги, активность, права и штатные флажки поиска. При массовом импорте дайте очереди обработаться. Для агентов на cron проверьте штатное расписание Битрикса. Прямое изменение БД через SQL требует переиндексации.
Медленная индексация или подсказки
Для подсказок используйте 0.1.29 или новее: ограничение поиска каталогами компонента применяется автоматически. Проверьте, что компонент действительно ограничен нужными каталогами.
Для индексации увеличьте порцию до 1000 или используйте CLI. Скорость зависит от БД и числа свойств. При задержке подсказок отдельно измерьте время AJAX-ответа: на него влияют индекс, словарь синонимов, шаблон и загрузка карточек товаров. Совпадение «раздел + товары» может выполнять дополнительную выборку.
Не устанавливается cron
Проверьте причину в блоке cron. Автоматическое управление требует ОС-пользователя PHP bitrix, POSIX, proc_open, /usr/bin/php и прав на crontab. Вход в админку под пользователем «Администратор» этого не обеспечивает. Используйте показанную команду для ручной установки от пользователя сайта. paused в журнале — сохранённая пауза, а не завершение индексации.
После обновления Битрикса
Проверьте блок Совместимость, обычный поиск, подсказки и реальный выбор товара в CRM. Если подключение несовместимо, отключите соответствующий поиск в модуле и исследуйте изменение классов/шаблона. Гарантии совместимости со всеми будущими обновлениями нет.
Для обращения в поддержку приложите версии PHP, Битрикса и модуля, запрос, тип формы поиска, настройки участвующих полей и сообщение об ошибке. Не публикуйте пароли, лицензионные ключи и дамп базы.
Manticore не устанавливается из админки
Возможность появилась в 0.1.34; проверьте установленную версию. В блоке «Manticore на этом сервере» проверьте окружение, каталог и журнал. PHP не должен работать от root. Нужны исходящий HTTPS, разрешённый запуск процессов и каталог без noexec. При сообщении о защите выберите каталог вне сайта или закройте его в веб-сервере: .htaccess не защищает файлы, которые напрямую отдаёт Nginx. Повторное нажатие продолжает загрузку. Полная инструкция.
Ручная остановка сохраняется и отключает автоперезапуск. Если нет cron, агент на посещениях не гарантирует немедленный запуск после перезагрузки. Основной поиск продолжает работать через MySQL.