2019-10-01 12:58:00
1666

При разработке функционала в 1С-Битрикс часто требуется как-то по особому настроить фильтр компонента, без вывода стандартного фильтра от Битрикса. Я часто сталкивался с такой задачей, где нужно было в зависимости от страницы выводить элементы по определённым значениям свойств.

Делается всё достаточно просто нужно сделать, это выбрать компонент новости и выбрать откуда будем выводить записи и создаём копию шаблона!

Второе указываем имя фильтра в настройках компонента, можно не указывать если у вас будут свои особые настройки в компоненте.

Комментируем вывод стандартного фильтра в настройках компонента bitrix:news Таким образом /* тут код стандартного фильтра */

Задаём глобальный фильтр с помощью global и настраиваем его таким образом.

Код PHP #1


<? global  $arrFilter; // указываем что переменная глобальная
$arrFilter = array(  
array('PROPERTY_имя свойства_VALUE' => 'значение'),
array('>=PROPERTY_свойство дата' => date('Y-m-d', time()))
);?>

 

Примерно так это будет выглядеть редакторе компонента bitrix:news
Редактировать нужно не Список новостей (bitrix:news.list), а именно сам компонент Новости (bitrix:news)

Данный фильтр фильтрует по какому-то значению свойству, а также показывает элементы у которых свойство типа дата больше чем текущая дата.


Здесь можно использовать как указанное из настроек компонента имя фильтра $arParams["FILTER_NAME"], а можно указать свое имя фильтра, т.е нашу переменную arrFilter.

Комментарии (46)