$GLOBALS['Название_Фильтра'] = array(Массив с данными для фильтрации);В параметрах компонента передать параметры включения фильтра и его название
Примеры:$APPLICATION->IncludeComponent(
.....
"USE_FILTER" => "Y",
"FILTER_NAME" => "Название_Фильтра",
.....
Наличие не пустого свойства. Если у инфоблока есть свойство с заданным кодом (DISCOUNTS) оно не пустое и активно:
$GLOBALS['arrFilter'] = array('ACTIVE' => 'Y', '!PROPERTY_DISCOUNTS' => false);Выборка элементов по их ID, если нужен один конкретный:
$GLOBALS['arrFilter'] = array('ID' => 12);Или несколько:
$GLOBALS['arrFilter'] = array('ID' => array(10,11,12,13));Элементы созданные за текущий день
$curdate = date('d.m.Y');Элементы созданные последние два дня, где 86000 это количество секунд. Умножая этот параметр на количество дней, получим элементы за последние n (86000 * n) дней
$arrFilter = Array(">=DATE_ACTIVE_FROM" => $curdate)
$from = date('d.m.Y', time() - 86400);Отфильтровываем элементы у которых в свойстве "HIT" установлено "Yes". При этом HIT это список с несколькими значениями.
$to = date("d.m.Y");
$arrFilter = Array(">=DATE_ACTIVE_FROM" => $from, "<=DATE_ACTIVE_FROM" => $to)
$GLOBALS['arrFilter'] = array("=PROPERTY_HIT_VALUE"=> "Yes");Отфильтровываем элементы у которых в свойстве "HIT" установлено "Yes". При этом HIT это список с несколькими значениями. И э этого свойсва ID - 15
$GLOBALS['arrFilter'] = array("PROPERTY_15_VALUE"=>"Yes");Отфильтровываем элементы у которых в свойстве "HIT" установлено "Yes". При этом HIT это список с несколькими значениями. И э этого свойсва ID - 15
$GLOBALS['arrFilter'] = array("PROPERTY_15_VALUE"=>"Yes");Все элементы из раздела инфоблока, зная ID этого раздела. Например из 90-го
$GLOBALS['arrFilter']=array("SECTION_ID" => 90);
Чтоб фильтрация заработала в bitrix:news отключаем в шаблоне:
<?if($arParams["USE_FILTER"]=="Y"):?>
<? $APPLICATION->IncludeComponent( "bitrix:catalog.filter", "", Array( "IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"], "IBLOCK_ID" => $arParams["IBLOCK_ID"], "FILTER_NAME" => $arParams["FILTER_NAME"], "FIELD_CODE" => $arParams["FILTER_FIELD_CODE"], "PROPERTY_CODE" => $arParams["FILTER_PROPERTY_CODE"], "CACHE_TYPE" => $arParams["CACHE_TYPE"], "CACHE_TIME" => $arParams["CACHE_TIME"], "CACHE_GROUPS" => $arParams["CACHE_GROUPS"], "PAGER_PARAMS_NAME" => $arParams["PAGER_PARAMS_NAME"], ), $component ); ?>
Дополнительный параметр для фильтрации.
Например, нужно не показывать товары без цены
global $mySmartFilter;
$mySmartFilter = ['>PRICE' => 0];
в bitrix:catalog.smart.filter добавим параметр PREFILTER_NAME
"PREFILTER_NAME" => "mySmartFilter",
"FILTER_NAME" => $arParams["FILTER_NAME"],