Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Иерархическое меню

00 голосов
5
Вопрос в том как изменить это меню, так чтоб с преходм на уровень ниже, верхний каталог не пропадал.
Примерно Так должно выглядеть.


Код
<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

<?if (!empty($arResult)):?>

<div class="menu-sitemap-tree">
<ul>
<?$previousLevel = 0;foreach($arResult as $arItem):?>

   <?if ($previousLevel && $arItem["DEPTH_LEVEL"] < $previousLevel):?>
      <?=str_repeat("</ul></li>", ($previousLevel - $arItem["DEPTH_LEVEL"]));?>
   <?endif?>

   <?if ($arItem["IS_PARENT"]):?>
      <li class="close">
             <div class="folder" onClick="OpenMenuNode(this)"></div> 
           <div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div> 
             
 <ul>

       <?else:?>

      <?if ($arItem["PERMISSION"] > "D"):?>
            <li>
               <div class="page"></div>
                   <div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div> 
   
      </li>
      <?endif?>

   <?endif?>

   <?$previousLevel = $arItem["DEPTH_LEVEL"];?>

<?endforeach?>

<?if ($previousLevel > 1)://close last item tags?>
   <?=str_repeat("</ul></li>", ($previousLevel-1) );?> 
<?endif?>

</ul>
</div>
<?endif?>
спросил 18 Сен, 13 от NamiSan (160 баллов)

5 Ответы

00 голосов
посмотри как сделанно у меня. Может это как-то поможет тебе.
www.cont.md/fin_zak
ответил 23 Сен, 13 от shelby (140 баллов)
00 голосов
Кстати, сделать так, чтобы при переходе на уровень ниже каталог был открыт на той странице, на которой мы находимся, сегодня не возможно. Битрикс вроди борится с этим и может в обновлениях будет решён вопрос.
ответил 23 Дек, 13 от shelby (140 баллов)
00 голосов
Цитата
art пишет:
мотри как сделанно у меня. Может это как-то поможет тебе. www.cont.md/fin_zak

Ну да, должно помочь, если не сложно кинь php шаблон этой менюшки.. Заранее спасибо!
ответил 08 Апр, 14 от NamiSan (160 баллов)
00 голосов
Дело не в шаблоне. Я шаблон не трогал. Дело в организации. Почитай как работать с меню в Хелпе и ты поймешь как организовать меню правильно.

Подсказка: Надо файлы в отдельной папке хранить, а не рядом с файлами меню типа "*.menu.php".
ответил 01 Авг, 14 от shelby (140 баллов)
00 голосов
Блин все равно не понимаю...

Есть два типа меню для для главного меню left и для всех чяилдов left_1.

Есть стандартный шаблон tree.

Вот есть корень сайта, там лежит фаил *.menu.php (с масcивом ссылок на разделы), index.php, и несколько папок(разделов на которые идут ссылки из *.menu.php).
В каждом разделе так же есть index.php и *.menu.php (с масcивом ссылок на ПОДРАЗДЕЛЫ).

В итоге имеем:
1) При клике на папочку раскрывается содержание чаилд меню left_1, но нет перехода по ссылке.
2) При клике на само название, осуществляется переход на на страницу подраздела, но меню не разворачиватся..
ответил 04 Дек, 14 от NamiSan (160 баллов)

Похожие вопросы

0 голосов
4 ответов