Здесть что-то выводится если время на часах меньше чем 18:00 и не раньше 9:00 1С-Битрикс - Настройка своего фильтра arrFilter

1С-Битрикс - Настройка своего фильтра arrFilter

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

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

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

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

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

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

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

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


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