Здравствуйте умные люди.
Хочу понять вот что.
Есть древовидное меню с тремя уровнями вложенности:
1 уровень
1 уровень(родитель)
--2 уровень
--2 уровень(родитель)
------3 уровень
------3 уровень
--2 уровень
--2 уровень
1 уровень
1 уровень
Необходимо чтобы после перезагрузки страницы родительские уровни все были открыты, т.е. чтобы у них не было класса close после загрузки страницы.
Соорудил проверку пунктов на "выбранность" с помощью условия<?if ($arItem["PERMISSION"] > "D"):?> <?if ($arItem["SELECTED"]):?> (опечатался, извините):
Но при переходе, к примеру на пункт третьего уровня "3 уровень" к пунктам-родителям первого и второго уровней "1 уровень(родитель), 2 уровень(родитель)" нужные классы не применяются, хотя при переходе на эти пункты условия прорабатываются и нужный класс к ним прибавляется.
Подскажите пожалуйста, это нужно реализовывать в шаблоне, или нужна настройка структуры?
Меню формируется из торгового каталога с разделами и подразделами имеющими три уровня вложенности.
Спасибо за Ваши ответы.
Хочу понять вот что.
Есть древовидное меню с тремя уровнями вложенности:
1 уровень
1 уровень(родитель)
--2 уровень
--2 уровень(родитель)
------3 уровень
------3 уровень
--2 уровень
--2 уровень
1 уровень
1 уровень
Необходимо чтобы после перезагрузки страницы родительские уровни все были открыты, т.е. чтобы у них не было класса close после загрузки страницы.
Соорудил проверку пунктов на "выбранность" с помощью условия
| Код |
|---|
<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"]):?>
<?if ($arItem["SELECTED"]):?>
<li class="selected-parent-item">
<div class="folder" onclick="OpenMenuNode(this)"></div>
<div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>
<ul>
<?else:?>
<li class="close">
<div class="folder" onclick="OpenMenuNode(this)"></div>
<div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>
<ul>
<?endif?>
<?else:?>
<?if ($arItem["PERMISSION"] > "D"):?>
<?if ($arItem["SELECTED"]):?>
<li class="selected-item">
<div class="page"></div>
<div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>
</li>
<?else:?>
<li>
<div class="page"></div>
<div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>
</li>
<?endif?>
<?endif?>
<?endif?>
<?$previousLevel = $arItem["DEPTH_LEVEL"];?>
<?endforeach?>
<?if ($previousLevel > 1)://close last item tags?>
<?=str_repeat("</ul></li>", ($previousLevel-1) );?>
<?endif?>
</ul>
</div> |
Подскажите пожалуйста, это нужно реализовывать в шаблоне, или нужна настройка структуры?
Меню формируется из торгового каталога с разделами и подразделами имеющими три уровня вложенности.
Спасибо за Ваши ответы.
Профессионально занимаюсь версткой и интеграцией оной в шаблон «1С-Битрикс»