Всем привет.
Есть сайт. В каталоге и на странице товара - товар показывается на основе наличия товара на всех складах - тут всё хорошо.
Вопрос, как в ПОИСКЕ сделать ограничение на поиск товаров только в определённых складах? Вариация с добавлением в tpl условия на проверку в магазах не катит, в том плане что пагинация показывает количество без учёта условия наличия товара в конкретном складе.
Погуглив - нашёл вариацию описанную ниже (добавление arrFilter) перед вызовом компонента написал ()
Вариант -1
global $arrFilter;
$arrFilter['OFFERS']['>CATALOG_STORE_AMOUNT_43'] = 0;
$arrFilter['OFFERS']['>CATALOG_STORE_AMOUNT_306'] = 0;
Вариант 2:
$arrFilter[] = [
'LOGIC' => 'OR',
[
'=TYPE' => \Bitrix\Catalog\ProductTable::TYPE_PRODUCT,
'=STORE_NUMBER' => [43,306],
'>STORE_AMOUNT' >= 1
],
['!=TYPE' => \Bitrix\Catalog\ProductTable::TYPE_PRODUCT]
];
$arrFilter['OFFERS']['>STORE_AMOUNT'] = 0;
$arrFilter['OFFERS']['=STORE_NUMBER'] = [43,306];
+
$APPLICATION->IncludeComponent(
"bitrix:search.page",
".default",
array(
"USE_FILTER" => "Y",
"FILTER_NAME" => "arrFilter",
....
Мне подсказали что такой вариант НЕ будет работать на странице поиска.
Вопрос: Как выводить товары при условии проверки по определённым складам а не по всем?
Есть сайт. В каталоге и на странице товара - товар показывается на основе наличия товара на всех складах - тут всё хорошо.
Вопрос, как в ПОИСКЕ сделать ограничение на поиск товаров только в определённых складах? Вариация с добавлением в tpl условия на проверку в магазах не катит, в том плане что пагинация показывает количество без учёта условия наличия товара в конкретном складе.
Погуглив - нашёл вариацию описанную ниже (добавление arrFilter) перед вызовом компонента написал ()
Вариант -1
global $arrFilter;
$arrFilter['OFFERS']['>CATALOG_STORE_AMOUNT_43'] = 0;
$arrFilter['OFFERS']['>CATALOG_STORE_AMOUNT_306'] = 0;
Вариант 2:
$arrFilter[] = [
'LOGIC' => 'OR',
[
'=TYPE' => \Bitrix\Catalog\ProductTable::TYPE_PRODUCT,
'=STORE_NUMBER' => [43,306],
'>STORE_AMOUNT' >= 1
],
['!=TYPE' => \Bitrix\Catalog\ProductTable::TYPE_PRODUCT]
];
$arrFilter['OFFERS']['>STORE_AMOUNT'] = 0;
$arrFilter['OFFERS']['=STORE_NUMBER'] = [43,306];
+
$APPLICATION->IncludeComponent(
"bitrix:search.page",
".default",
array(
"USE_FILTER" => "Y",
"FILTER_NAME" => "arrFilter",
....
Мне подсказали что такой вариант НЕ будет работать на странице поиска.
Вопрос: Как выводить товары при условии проверки по определённым складам а не по всем?