Вывод сопутствующих товаров в Битрикс по привязке к элементам по внешнему коду
3
Чтобы реализовать вывод сопутствующих товаров в Битрикс по привязке к элементам по внешнему коду, или сделать вывод связанных элементов инфоблока 1С-Битрикс с текущим элементом. На сайте должно быть создано множественное свойство RECOMMENDED_IDS (тип Привязка к элементам по внешнему коду). Для вывода товаров можно воспользоваться следующим кодом: <?php
// ID текущего элемента
$elementId = $arResult["ID"];
// Получаем значения свойства (EXTERNAL_ID)
$recommendedExternal = [];
$res = CIBlockElement::GetProperty(
$arParams["IBLOCK_ID"],
$elementId,
["sort" => "asc"],
["CODE" => "RECOMMENDED_IDS"]
);
while ($prop = $res->Fetch()) {
if (!empty($prop["VALUE"])) {
$recommendedExternal[] = $prop["VALUE"]; // это EXTERNAL_ID
}
}
// Если пусто — не выводим раздел
if (empty($recommendedExternal)) {
return;
}
// Конвертируем EXTERNAL_ID → ID элементов
$recommendedIds = [];
$res = CIBlockElement::GetList(
[],
[
"IBLOCK_ID" => $arParams["IBLOCK_ID"],
"EXTERNAL_ID" => $recommendedExternal
],
false,
false,
["ID"]
);
while ($item = $res->Fetch()) {
$recommendedIds[] = $item["ID"];
}
// Готовим фильтр для catalog.section
$GLOBALS['arrRecommendedFilter'] = [
"ID" => $recommendedIds
];
?>
<?php
$APPLICATION->IncludeComponent(
"bitrix:catalog.section",
"recommended",
[
"IBLOCK_ID" => $arParams["IBLOCK_ID"],
"SECTION_ID" => "",
"FILTER_NAME" => "arrRecommendedFilter",
"PAGE_ELEMENT_COUNT"=> 8,
"SHOW_ALL_WO_SECTION" => "Y",
// остальные параметры...
],
$component
);
?>
|
Последние записи
|