При штатной установке, интернет-магазина на 1С Битрикс, умный фильтр по товарам, показывает колличество найденных товаров. От пользователя требуется дополнительное действие- нажать на кнопку "Показать"
Если мы хотим, что бы фильтрация происходила на лету, причем с постоянным отбором параметров, достаточно включить несколько опций.
Данный функционал, штатно, входит в 1С-Битрикс. Но почему-то не все о нем знают, потому решил написать эту заметку- авось кому то пригодится
Включение фильтрации на AJAX
Итак: у нас есть готовый магазин, в каталоге выведен умный фильтр. Для включения моментальной фильтрации: проходим в настройки компонента и находим следующие параметры
- Включить режим AJAX: собственно, включает режим
- Включить прокрутку к началу компонента: Опционально, на фильтр не влияет. Но рекомендую не включать, для удобства пользователей (смотри в видео)
- Включить эмуляцию навигации браузера: Опционально, на фильтр не влияет. Но рекомендую включать, для удобства пользователей (смотри в видео)
- Мгновенная фильтрация при включенном AJAX: собственно, включает фильтрацию
У кого нет таких параметров в каталоге: Скорее всего они отсутсвуют в параметрах вашего шаблона каталога. Включить можно, открыв шаблон section.php вашего каталога и добавив/отредактировав параметры:
Основные
"AJAX_MODE" => "Y",
"INSTANT_RELOAD" => "Y" //Это указываем у фильтра
Опциональные
"AJAX_OPTION_JUMP" => "N",
"AJAX_OPTION_HISTORY" => "Y",
В идеале, скопировать файл parametrs.php из штатного шаблона каталога (на свой страх и риск, я не знаю модель построения вашего каталога, потому возможны ошибки)
Альтернативный вариант работы фильтра, без включения AJAX для всего каталога, рассмотрен в заметке Умный фильтр во всплывающей панели на мобильных.