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

Древовидное меню

00 голосов
6
Прочитала документацию битрикса, однако постоянно получается, что меню не древовидное.
То есть, допустим, вот такая логика меню:
1.Продукция
1.1. Продукт 1
1.2. Продукт2
У меня получается, что я нажимаю на продукцию – открывается страница. На этой странице в пунктах меню стоит Продукт 1.
В общем, пожалуйста, объясните понятным языком, как правильно сделать древовидное меню, с «ветками», которые будут отображаться полностью на всех страницах.
спросил 16 Сен, 13 от asdasdffg (280 баллов)

6 Ответы

00 голосов
Допустим, у нас есть 2 типа меню - top и left (не подходят, можно завести свои типы). Верхнее меню (где Продукты) пусть будет типа top. Все ссылки из него должны вести на папки (НЕ на страницы). В этих папках заводим меню другого типа - пусть будет left (top уже занят). К примеру, для папки с Продукты в left-меню будут Продукт 1, Продукт 2.
Настраиваем компонент меню. Шаблон - древовидное меню. Тип меню 1-го уровня - top. Всех остальных - left. Глубина вложенности - не менее 2-х. Все.
ответил 19 Сен, 13 от Pomnep (13,960 баллов)
00 голосов
Спасибо Евгений, вроде бы получилось. Буду дальше изучать)
ответил 18 Дек, 13 от asdasdffg (280 баллов)
00 голосов
Не подскажите, как сделать так чтобы та ссылка, на которой находится пользователь, меняла свой цвет на отличный от основного цвета?
Код
div.menu-sitemap-tree a:active{ color: orange; } 

Работает не корректно.
ответил 02 Апр, 14 от asdasdffg (280 баллов)
00 голосов
в шаблоне там где выводятся пункты меню написать что то вроде
Код
<li <?if ($arItem["SELECTED"]) echo 'class="menu-selected"'?>>.....

ну и в стили прописать класс menu-selected
ответил 26 Июль, 14 от ashkmn (700 баллов)
00 голосов
Там так написано:
Код
<li <?if (!$arItem["SELECTED"]):?>class="close"<?endif?>>
            <div class="folder" onClick="OpenMenuNode(this)"></div>
            <div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>

Надо ли исправлять или как-то в CSS прописать надо?
То есть надо ли как-то изменять шаблон, и подскажите, пожалуйста, что надо написать в таком случает в CSS.
ответил 27 Ноя, 14 от asdasdffg (280 баллов)
00 голосов
В css-файле шаблона прописываете новый стиль для ссылки. В шаблоне вместо
Код
<a href="<?=$arItem["LINK"]?>">

пишем
Код
<?
if ($arItem['SELECTED']) { ?><a href="<?=$arItem["LINK"]?>" class="имя_вашего_класса_для_ссылки"><? }
else { ?><a href="<?=$arItem["LINK"]?>"><? }
ответил 22 Март, 15 от Pomnep (13,960 баллов)

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

0 голосов
1 ответ
спросил 09 Март, 14 от Nuts2010 (100 баллов)
0 голосов
3 ответов
спросил 23 Фев, 14 от Anton6 (160 баллов)
0 голосов
1 ответ
спросил 30 Ноя, 13 от LoLiTKa (620 баллов)
0 голосов
5 ответов
спросил 25 Ноя, 13 от Traxexx (900 баллов)
0 голосов
0 ответов
спросил 09 Ноя, 13 от Jagami (100 баллов)