Вывести разделы инфоблока в которых находится элемент Битрикс

569  |  0

Достаточно часто, нужно в карточке товара или новости, вывести структуру разделов в котором находится элемент. С одной стороны, это умеет делать компонент "навигационная цепочка", но можно, для большей гибкости, воспользоваться методом API CIBlockSection::GetNavChain

Например: достаточно редкий случай, но нужно вывести структуру разделов в результатах поиска по каталогу. По сути, там обычный catalog.section. В каждом элементе необходимо вывести цепочку навигации, в которой находится конкретный элемент:

Реализуется достаточно просто. Мы знаем ID раздела в котором находится товар. Посмотреть его можно просто: вызвав в элементе echo $arElement['IBLOCK_SECTION_ID']

Зная ID одного раздела, методом CIBlockSection::GetNavChain можем получить и все родительские разделы данного раздела и еще кучу информации. В конкретном случае (имитации навигационной цепочки), нам нужна еще и ссылка на каждый раздел в цепочке

<?
$resSection = CIBlockSection::GetNavChain(false, $arElement['IBLOCK_SECTION_ID']);
while ($arSection = $resSection->GetNext()) {
$array_sections = $arSection;
?>
<a href="<?=$arSection['SECTION_PAGE_URL'];?>">
<?=$arSection['NAME'];?>
</a>
<?}?>

Вставляем этот код в то место где хотим вывести "хлебные крошки". Использовать можно где угодно, везде где можете получить ID конечного раздела

Расскажи друзьям-то:
Уважаемый читатель! В связи с участившимся спамом в комментариях, возможность писать доступна только для зарегистрированных пользователей
Зарегистрироваться Войти Напомнить пароль
Или войти через социальную сеть:

© 2011—2016 Частный вебмастер: ИП Базаров, ОГРНИП: 315784700173692. Работает на 1С-Битрикс.
Копирование материалов запрещено: "ГК РФ, часть 4, раздел VII: Права на результаты интеллектуальной деятельности".

Информация размещенная на сайте, не является публичной офертой. Политика конфеденциальности
x
Как к Вам обращаться? *
Ваша электронная почта: *
Доп. материалы (логотип, тех. задание):
 
Обзор
Текст сообщения: