Описание catalog.filter
Компонент выводит форму фильтра для фильтрации элементов информационных блоков.
Компонент содержит 3 шаблона: .default, flat и bootstrap_v4. Компонент стандартный и входит в дистрибутив модуля.
В визуальном редакторе компонент расположен по пути Контент > Каталог > Фильтр по элементам.
Компонент относится к модулю Информационные блоки.
Параметры
| Поле | Параметр | Описание |
| Источник данных |
| Тип инфо-блока | IBLOCK_TYPE | Указывается один из созданных в системе типов информационных блоков. |
| Инфо-блок | IBLOCK_ID | Для выбранного типа инфоблоков указывается идентификатор информационного блока, элементы которого будут отфильтрованы. |
| Имя входящего массива для дополнительной фильтрации элементов | PREFILTER_NAME | Задается имя переменной, в которую передается массив параметров из дополнительного фильтра. Если имя массива не указано, то будет использоваться значение по умолчанию. |
| Имя выходящего массива для фильтрации | FILTER_NAME | Задается имя переменной, в которую передается массив параметров из фильтра. Если имя массива не указано, то будет использоваться значение по умолчанию. |
| Поля | FIELD_CODE | Указываются дополнительные поля элементов инфоблока, по которым будет возможна фильтрация. Заполняется из публичной части редактора, удерживая клавишу Ctrl либо в коде, указывая массив:
Array("NAME","PREVIEW_TEXT","PREVIEW_PICTURE","DETAIL_TEXT",""),
При выборе пункта (не выбрано)-> и без указания полей в строках (т.е. если задан пустой массив), будут выведены поля по умолчанию. |
| Свойства | PROPERTY_CODE | Указываются свойства инфоблока, которые будут отображены при показе в качестве полей фильтра. При выборе пункта (не выбрано)-> и без указания кодов свойств в строках, свойства выведены не будут.
Значения свойств типа "Список" отображаются в фильтре в соответствии с настройками, заданными в форме редактирования самого свойства (поле "Внешний вид"). |
| Поля предложений | OFFERS_FIELD_CODE | Выбираются поля предложений. С помощью клавиши Ctrl можно выбрать несколько значений. Данный параметр появляется при настройке компонента на инфоблок с поддержкой SKU. |
| Свойства предложений | OFFERS_PROPERTY_CODE | Указываются свойства предложений. Можно добавлять свои. Данный параметр появляется при настройке компонента на инфоблок с поддержкой SKU. |
| Внешний вид |
| Высота списков множественного выбора | LIST_HEIGHT | Указывается высота множественных списков выбора, отображаемых в фильтре. |
| Ширина однострочных текстовых полей ввода | TEXT_WIDTH | Указывается ширина текстового поля ввода в форме фильтра. |
| Ширина полей ввода для числовых интервалов | NUMBER_WIDTH | Указывается ширина полей ввода для числовых интервалов в форме фильтра. |
| Настройки кеширования |
| Тип кеширования | CACHE_TYPE | Тип кеширования:
- A - Авто + Управляемое: автоматически обновляет кеш компонентов в течение заданного времени или при изменении данных;
- Y - Кешировать: для кеширования необходимо определить время кеширования;
- N - Не кешировать: кеширования нет в любом случае.
|
| Время кеширования (сек.) | CACHE_TIME | Время кеширования, указанное в секундах. |
| Учитывать права доступа | CACHE_GROUPS | [Y|N] При отмеченной опции будут учитываться права доступа при кешировании. |
| Дополнительные настройки |
| Сохранять установки фильтра в сессии пользователя | SAVE_IN_SESSION | [Y|N] При отмеченной опции установки фильтра будут сохраняться в сессии пользователя. |
| Имя массива с переменными для построения ссылок в постраничной навигации | PAGER_PARAMS_NAME | Задается имя переменной, в которой передается массив с переменными для построения ссылок компонентом постраничной навигации. |
| Цены |
| Тип цены | PRICE_CODE | Указывается тип цены для выводимых элементов. Если не задан ни один из типов, то цена товара и кнопки Купить и В корзину показаны не будут. |
Пример вызова
<?$APPLICATION->IncludeComponent (
"bitrix:catalog.filter",
"",
Array(
"IBLOCK_TYPE" => "news",
"IBLOCK_ID" => "2",
"FILTER_NAME" => "arrFilter",
"FIELD_CODE" => array(),
"PROPERTY_CODE" => array(),
"OFFERS_FIELD_CODE" => array(),
"OFFERS_PROPERTY_CODE" => array(),
"PRICE_CODE" => array(),
"CACHE_TYPE" => "A",
"CACHE_TIME" => "36000000",
"CACHE_GROUPS" => "Y",
"LIST_HEIGHT" => "5",
"TEXT_WIDTH" => "20",
"NUMBER_WIDTH" => "5",
"SAVE_IN_SESSION" => "N",
"PREFILTER_NAME" => "preFilter",
"PAGER_PARAMS_NAME" => "arrPager"
),
false
);?>