Skip to content

Instantly share code, notes, and snippets.

@gdecider
Last active February 22, 2018 11:48
Show Gist options
  • Save gdecider/510d11927317948fa8dc67c7478e1b21 to your computer and use it in GitHub Desktop.
Save gdecider/510d11927317948fa8dc67c7478e1b21 to your computer and use it in GitHub Desktop.
Битрикс Ш меню двух уровневое
<? $APPLICATION->IncludeComponent(
"bitrix:menu",
"catalogmenu",
array(
"ALLOW_MULTI_SELECT" => "N",
"CHILD_MENU_TYPE" => "catalog",
"DELAY" => "N",
"MAX_LEVEL" => "3",
"MENU_CACHE_GET_VARS" => [],
"MENU_CACHE_TIME" => "3600",
"MENU_CACHE_TYPE" => "N",
"MENU_CACHE_USE_GROUPS" => "Y",
"ROOT_MENU_TYPE" => "catalog",
"USE_EXT" => "Y",
),
false
); ?>
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();
/**
* @var $APPLICATION CMain
* @var $aMenuLinks array
*/
global $APPLICATION;
$aMenuLinksExt = $APPLICATION->IncludeComponent("bitrix:menu.sections", "", array(
"IS_SEF" => "Y",
"SEF_BASE_URL" => "/catalog/",
"SECTION_PAGE_URL" => "#SECTION_CODE_PATH#/",
"DETAIL_PAGE_URL" => "#SECTION_CODE_PATH#/#ELEMENT_CODE#",
"IBLOCK_TYPE" => IB_CATALOG_TYPE,
"IBLOCK_ID" => IB_CATALOG,
"DEPTH_LEVEL" => "3",
"CACHE_TYPE" => "A",
"CACHE_TIME" => "36000000"
),
false
);
$aMenuLinks = array_merge($aMenuLinksExt, $aMenuLinks);
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?
if(count($arResult) <=0 ) return;
$arItems = array();
$curParent = null;
foreach ($arResult as $arItem) {
if ($arItem['DEPTH_LEVEL'] === 1 && $arItem['IS_PARENT']) {
$arItems[] = $arItem;
$curParent = &$arItems[count($arItems) - 1];
} else {
if($arItem['DEPTH_LEVEL'] === 1) {
$arItems[] = $arItem;
} else {
$curParent['ITEMS'][] = $arItem;
}
}
}
unset($curParent);
$arResult = $arItems;
?>
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?if (!empty($arResult)):?>
<nav class="main-menu" id="js-main-menu">
<ul>
<?foreach ($arResult as $arItem):?>
<li>
<a href="<?=$arItem['LINK']?>" class="<? echo $arItem['SELECTED'] ? 'active' : ''?> <?echo $arItem['IS_PARENT'] ? 'parent' : ''?>"><?=$arItem['TEXT']?></a>
<?if($arItem['IS_PARENT']) :?>
<ul>
<?foreach ($arItem['ITEMS'] as $arSubItem) :?>
<li><a href="<?=$arSubItem['LINK']?>"><?=$arSubItem['TEXT']?></a></li>
<?endforeach;?>
</ul>
<?endif;?>
</li>
<?endforeach;?>
</ul>
</nav>
<?endif;?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment