=this.Name}
Задать вопрос
При разработке каталога часто встает задача перед программистом Битрикс
- Вывести Похожие товары (Аналоги)  по определенному свойству в детальной карте.

Расскажу как я реализовал такую задачу на сайте https://detal-group.ru/ 
Задача была вывести товары аналоги в детальной карте товара, аналогом считались товары у которых совпадал Артикул.
И так приступим.
1. в шаблоне детальной карты товара catalog.element  в файле result_modifier.php 
В самом конце пишем следующий код:
// Аналоги
$cp = $this->__component;
if (is_object($cp))
{
	$cp->arResult["CML2_ARTICLE"] = $arResult["PROPERTIES"]["CML2_ARTICLE"]["VALUE"];
	$cp->SetResultCacheKeys(array("CML2_ARTICLE")); 
}

Что мы делаем? Записываем из массива $arResult, все необходимые свойства со значениями, 
теперь они доступны как в самом template.php так и в component_epilog.php.

2. Далее в component_epilog.php пишем небольшой фильтр для отбора нужных нам товаров и вызываем нужный компонент.

<?//проверяем заполнено ли свойство
if($arResult["CML2_ARTICLE"]){?>
	<div class="wraps yu">
		<hr>
		<h4><? //заголовок для вывода товаров
		echo GetMessage("TITLE_SLIDE"); ?></h4>
<?//филтруем по значению
global $serFilter;
$serFilter = array(
	"!ID" => $arResult["ID"]
);
if($arResult["CML2_ARTICLE"]) 
	$serFilter["PROPERTY_CML2_ARTICLE"] = $arResult['CML2_ARTICLE'];
	?> 
	<?//подключаем компонент с нашим фильтром
	$APPLICATION->IncludeComponent(
	"bitrix:catalog.top",
	"main",
	array(
		..........
		"FILTER_NAME" => 'serFilter',
		..........
	),
	false, array("HIDE_ICONS"=>"Y")
	);?>
	</div>
<?}?>
На этом все)) Пример можно посмотреть на сайте https://detal-group.ru/ и скрин в шапке статьи. 
Заказать услугу
Оформите заявку, мы свяжемся с вами в ближайшее время и ответим на все интересующие вопросы.

 
Текст сообщения*
Загрузить файл или картинкуПеретащить с помощью Drag'n'drop
Перетащите файлы
Ничего не найдено
Загрузить изображение