выводим каталог на странице поиска битрикс

В стандартной странице поиске выводиться какая то чушь. Выведем товары.
Для этого в компоненте каталога просто применим фильтр с ид элементов. Идшники компонентов получим , например, тем же поиском.


$res = $APPLICATION->IncludeComponent(
	"bitrix:search.page", 
	"", 
	array(
		"RESTART" => "N",
		"CHECK_DATES" => "N",
		"USE_TITLE_RANK" => "N",
		"DEFAULT_SORT" => "rank",
		"arrFILTER" => array(
		),
		"arrFILTER_iblock_catalog" => array(
			0 => "all",
		),
		"SHOW_WHERE" => "N",
		"SHOW_WHEN" => "N",
		"PAGE_RESULT_COUNT" => "25",
		"AJAX_MODE" => "N",
		"AJAX_OPTION_SHADOW" => "Y",
		"AJAX_OPTION_JUMP" => "N",
		"AJAX_OPTION_STYLE" => "Y",
		"AJAX_OPTION_HISTORY" => "N",
		"CACHE_TYPE" => "A",
		"CACHE_TIME" => "36000000",
		"DISPLAY_TOP_PAGER" => "N",
		"DISPLAY_BOTTOM_PAGER" => "Y",
		"PAGER_TITLE" => "Результаты поиска",
		"PAGER_SHOW_ALWAYS" => "N",
		"PAGER_TEMPLATE" => "arrows",
		"USE_SUGGEST" => "N",
		"SHOW_ITEM_TAGS" => "N",
		"SHOW_ITEM_DATE_CHANGE" => "N",
		"SHOW_ORDER_BY" => "N",
		"SHOW_TAGS_CLOUD" => "Y",
		"AJAX_OPTION_ADDITIONAL" => "",
		"COMPONENT_TEMPLATE" => "monopoly",
		"NO_WORD_LOGIC" => "N",
		"FILTER_NAME" => "",
		"USE_LANGUAGE_GUESS" => "Y",
		"SHOW_RATING" => "",
		"RATING_TYPE" => "",
		"PATH_TO_USER_PROFILE" => "",
		"COMPOSITE_FRAME_MODE" => "A",
		"COMPOSITE_FRAME_TYPE" => "AUTO"
	),
	false
);

$res = array_values($res);

В шаблоне search.page


elseif(count($arResult["SEARCH"])>0){
  return array_column( $arResult["SEARCH"], 'ITEM_ID');

Все, idшники есть. Записываем их в фильтр.


$GLOBALS['arrFilter'] = ['ID' => $res];

ну и сам каталог


$APPLICATION->IncludeComponent(
	"bitrix:catalog", 
	"", 
array(
"USE_FILTER" => "Y",
"FILTER_NAME" => "arrFilter",
'SHOW_ALL_WO_SECTION' => 'Y' ...

Leave a comment

Your email address will not be published.


*