[Bitrix] Многоуровневое меню в Bitrix

Author admin    Category Bitrix     Tags ,


Стандартный модуль вывода меню в Битриксе поддерживает максимальный уровень вложенности – 4. А что делать, если клиента такой уровень вложенности не устраивает. Из данной ситуации есть 2 выхода: Первое – доработать стандартный модуль вывода меню, да это можно сделать, но если групп и подгрупп очень много, будет выглядеть не как меню, а как «солянка» Второй метод – перед списком товара будут выводиться подгруппы они будут исполнять навигационное меню. данный метод мы сегодня с вами и разберем.

Для создания многоуровневого меню, нам необходимо отредактировать шаблон Каталога товаров под названием Элементы раздела (bitrix:catalog.section)

<?php
$OUT="";

// выводим разделы
$IBLOCK_ID = $arParams['IBLOCK_ID'];
$ID = $arParams["SECTION_ID"];
if(CModule::IncludeModule("iblock")){
  // выборка только активных разделов из инфоблока $IBLOCK_ID, $ID - раздел-родителя
  $arFilter = Array('IBLOCK_ID'=>$IBLOCK_ID, 'GLOBAL_ACTIVE'=>'Y', 'SECTION_ID'=>$ID);
  $db_list = CIBlockSection::GetList(Array("NAME"=>"ASC"), $arFilter, true,$arSelect = array( "UF_*"));
  while($ar_result = $db_list->GetNext())
  {

   $OUT.="<li><a href=\"/catalog/goods/$ar_result[ID]/\">$ar_result[NAME] ($ar_result[ELEMENT_CNT])</a></li>";

  }
}

?>

В результате переменная $OUT будет содержать список разделов.

P.S. Скрины криво загрузились. Изображения широкие и кликабельные, можно посмотреть как будет выглядеть меню.

Постовой: Не успеваете посмотреть Дом 2 по телевизору? Смотрите его в интернете дом2 смотреть новые серии.

Посты:


2leep.com

Прокомментировать