Настройка умного фильтра каталога 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка умного фильтра каталога 1С-Битрикс
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1240
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    846
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    582
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    749
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    981

Настройка умного фильтра каталога 1С-Битрикс

Умный фильтр (компонент bitrix:catalog.smart.filter) — стандартное решение для фильтрации каталога. Подключается за несколько часов, работает из коробки. Проблемы начинаются когда фильтр тормозит на каталоге из 10 000 позиций, не подхватывает нужные свойства, показывает значения с нулевым количеством товаров или выглядит не так, как в макете.

Как работает умный фильтр

Компонент анализирует свойства инфоблока и строит форму фильтрации. При отправке параметры передаются в URL и используются компонентом каталога для фильтрации через CIBlockElement::GetList. Значения фильтра сохраняются в кеш, что обеспечивает быструю работу при повторных обращениях.

Ключевые параметры компонента:

Параметр Рекомендуемое значение Описание
FILTER_NAME arrFilter Имя переменной фильтра
HIDE_NOT_AVAILABLE Y Скрыть недоступные значения
HIDE_NOT_AVAILABLE_OFFERS Y Скрыть при нулевом остатке
SMART_FILTER Y Включить умный режим
SHOW_EMPTY_VALUES N Не показывать пустые значения

Настройка свойств для фильтра

Не все свойства инфоблока попадают в фильтр автоматически. В настройках свойства (Инфоблоки → Свойства) требуются флаги:

  • «Участвует в фильтрации» — свойство появится в умном фильтре
  • «Использовать в умном фильтре» — включает оптимизированный режим подсчёта

Для свойств типа «Список» рекомендуется включить «Сортировать значения» — иначе порядок значений непредсказуем.

Подключение к компоненту каталога

// Умный фильтр
$APPLICATION->IncludeComponent('bitrix:catalog.smart.filter', 'my_filter', [
    'IBLOCK_ID'              => 15,
    'FILTER_NAME'            => 'arrFilter',
    'SMART_FILTER'           => 'Y',
    'HIDE_NOT_AVAILABLE'     => 'Y',
    'SHOW_EMPTY_VALUES'      => 'N',
    'URL_FORM'               => '/catalog/',
]);

// Каталог использует тот же arrFilter
$APPLICATION->IncludeComponent('bitrix:catalog', 'my_catalog', [
    'IBLOCK_ID'   => 15,
    'FILTER_NAME' => 'arrFilter',
]);

Кастомизация шаблона

Стандартный шаблон из /bitrix/components/bitrix/catalog.smart.filter/templates/ копируется в /local/templates/{site_template}/components/bitrix/catalog.smart.filter/my_filter/. Структура:

template.php         — основной файл шаблона
filter.php           — форма фильтра
result_modifier.php  — постобработка перед выводом
style.css
script.js

В result_modifier.php можно изменить порядок, названия и группировку блоков фильтра до рендера.

Типичные проблемы

Свойство не появляется — проверить флаг «Участвует в фильтрации». Не все типы свойств поддерживаются умным фильтром (например, HTML/TEXT не поддерживается).

Показываются значения с 0 товаров — включить HIDE_NOT_AVAILABLE = Y и HIDE_NOT_AVAILABLE_OFFERS = Y.

Фильтр не сбрасывается — проверить URL после сброса. Сброс работает через очистку GET-параметров с перезагрузкой страницы, кнопка сброса должна вести на чистый URL каталога.

Медленная работа — требует отдельной оптимизации: индексы в БД, уменьшение количества значений свойств, агрессивный кеш.

Сроки выполнения

Базовая настройка стандартного умного фильтра с выбором свойств и кастомным шаблоном — 4–8 часов. Настройка с нестандартными свойствами, условной видимостью блоков и AJAX-обновлением — 1–2 рабочих дня.