Думаю многие сталкивались со следующей проблемой. Сделали каталог товаров, настроили умный фильтр в категориях товаров. Но заказчику потребовались страницы, отличные от страниц категорий.
global $smartPreFilter; $smartPreFilter = [ 'ID' => [14, 15, 16], ]; $APPLICATION->IncludeComponent( "bitrix:catalog.smart.filter", ".default", array( //... "FILTER_NAME" => "arrFilter", "PREFILTER_NAME" => "smartPreFilter", //... ), $component, array('HIDE_ICONS' => 'Y') ); var_dump($GLOBALS['arrFilter']); // array(1) { ["ID"]=> array(3) { [0]=> int(14) [1]=> int(15) [2]=> int(16) } } $APPLICATION->IncludeComponent( "bitrix:catalog.section.list", ".default", array( "FILTER_NAME" => "arrFilter", ), $component, array("HIDE_ICONS" => "Y") );Видим, что на странице категории вывелись лишь три товара (так было бы и раньше) и в фильтре доступны лишь значения, относящиеся к этой выборке. Таким же образом выведем на страницу категории новинки:
$smartPreFilter = [
'PROPERTY_NEWPRODUCT' => 1,
];