Как органичить данные в фильтре smart.filter только свойствами товаров переданными в массиве $arrFilter(имя которого передано в FILTER_NAME)?

Создаётся массив с фильтром, а именно кодом:

global $arrFilter;
$arrFilter = array();
$arrFilter["=ID"] = $myGetBasketData->getProductIdDiscontAr();// в этом массиве лежат Id товаров с скидками

Далее этот массив передаётся в комплексный компонент bitrix catalog, а именно через FILTER_NAME:

$APPLICATION->IncludeComponent(
"bitrix:catalog",
"new_catalog",
array(
"FILTER_NAME" => "arrFilter",
...

Комплексный компонент каталог подключает внутри catalog.smart.filter, а именно

$APPLICATION->IncludeComponent(
"bitrix:catalog.smart.filter",
"",
array(
"IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"],
"IBLOCK_ID" => $arParams["IBLOCK_ID"],
"SECTION_ID" => $arCurSection['ID'],
"FILTER_NAME" => $arParams["FILTER_NAME"],

Проверено что $arParams["FILTER_NAME"] содержит строку "arrFilter"

При всём выше описанном комплексный компонент каталог отображает товары указанные в $arrFilter["=ID"] (то есть товары с скидкой), а фильтр по свойствам(Размеры, материалы и прочее) генерируется из всех 50-ти+ товаров имеющихся в инфоблоке каталога.

Как ограничить данные в фильтре данными относящимися исключительно к товарам с скидкой(то-есть ид которых содержится в $arrFilter["=ID"]).
  • Вопрос задан
  • 407 просмотров
Пригласить эксперта
Ответы на вопрос 1
Anadi
@Anadi
Если ответ Вам помог мой, решением отметье его!
Если у вас не древняя версия битрикс, то можно для смарт фильтра использовать параметр "PREFILTER_NAME".
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы