Друзья, поскольку не нашел халявы на эту тему без рукоблудия, то решил поделиться контентом.
Скрипт основан на стандартном шаблоне многоуровневого меню Bitrix
Реализован под Bootstrap, посему без ul li, но нам важно знать концепт
Писал это для сайта , где можно и взглянуть на него.
Скрипт основан на стандартном шаблоне многоуровневого меню Bitrix
| Код |
|---|
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?if (!empty($arResult)):?>
<div class="list-group">
<?
$previousLevel = 0;
$parentactive=false;
foreach($arResult as $arItem):?>
<?if ($arItem["IS_PARENT"] and $arItem["SELECTED"]){
$parentactive=true;
$parentforlevel=$arItem["DEPTH_LEVEL"];
$primero=true;
}
?>
<?if ($arItem["DEPTH_LEVEL"] == 1):?>
<a href="<?=$arItem["LINK"]?>" class="<?if ($arItem["SELECTED"]):?>list-group-item active<?else:?>list-group-item<?endif?>"><?=$arItem["TEXT"]?></a>
<?elseif($parentactive and $arItem["DEPTH_LEVEL"]-$parentforlevel==1 or $arItem["DEPTH_LEVEL"]==$parentforlevel):?>
<a href="<?=$arItem["LINK"]?>" class="list-group-item <?if ($arItem["SELECTED"]):?>active<?endif?>"><?=$arItem["TEXT"]?></a>
<?endif?>
<?$previousLevel = $arItem["DEPTH_LEVEL"];?>
<? if (!$primero and $parentforlevel==$previousLevel){$parentactive=false;$parentforlevel=null;}?>
<?$primero=false;?>
<?endforeach?>
</div>
<?endif?>
|
Реализован под Bootstrap, посему без ul li, но нам важно знать концепт
Писал это для сайта , где можно и взглянуть на него.