Фильтрация в компонентах (bitrix:news.list, bitrix:catalog.section) по параметрам в 1С-Битрикс
перед вызовом компонента вставить код вида
$GLOBALS['Название_Фильтра'] = [Массив с данными для фильтрации];
в параметрах компонента передать параметры включения фильтра и его название
$APPLICATION->IncludeComponent(
//...
"USE_FILTER" => "Y",
"FILTER_NAME" => "Название_Фильтра",
//...
наличие не пустого свойства. Если у инфоблока есть свойство с заданным кодом (DISCOUNTS) оно не пустое и активно:
$GLOBALS['arrFilter'] = ['ACTIVE' => 'Y', '!PROPERTY_DISCOUNTS' => false];
выборка элемента по ID:
$GLOBALS['arrFilter'] = ['ID' => 1];
выборка нескольких элементов по ID:
$GLOBALS['arrFilter'] = ['ID' => [5,8,9,16,21]];
элементы созданные за текущий день
$curdate = date('d.m.Y');
$arrFilter = [">=DATE_ACTIVE_FROM" => $curdate]
элементы созданные последние два дня, где 86000 это количество секунд. Умножая этот параметр на количество дней, получим элементы за последние n (86000 * n) дней
$from = date('d.m.Y', time() - 86400);
$to = date("d.m.Y");
$arrFilter = [">=DATE_ACTIVE_FROM" => $from, "<=DATE_ACTIVE_FROM" => $to]
отфильтровываем элементы у которых в свойстве «HIT» установлено «Yes». При этом HIT это список с несколькими значениями
$GLOBALS['arrFilter'] = ["=PROPERTY_HIT_VALUE"=> "Yes"];
отфильтровываем элементы у которых в свойстве «HIT» установлено «Yes». При этом HIT это список с несколькими значениями. И э этого свойсва ID — 15
$GLOBALS['arrFilter'] = ["PROPERTY_15_VALUE"=>"Yes"];
отфильтровываем элементы у которых в свойстве «HIT» установлено «Yes». При этом HIT это список с несколькими значениями. И э этого свойсва ID — 15
$GLOBALS['arrFilter'] = ["PROPERTY_15_VALUE"=>"Yes"];
все элементы из раздела инфоблока
$GLOBALS['arrFilter'] = ["SECTION_ID" => 7];
не показывать товары без цены
$GLOBALS['arrFilter'] = ['>PRICE' => 0];