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

Сборка меню с подменю разных типов

00 голосов
3
Имеем меню основных разделов типа top и меню более низкого уровня в этих разделах типов left либо right, в зависимости от страницы. Чтобы собрать дерево меню при подключении компонента пишем:
Код
$APPLICATION->IncludeComponent("bitrix:menu", "top", array(
               "ROOT_MENU_TYPE" => "top",
               "MENU_CACHE_TYPE" => "N",
               "MAX_LEVEL" => "2",
               "CHILD_MENU_TYPE" => "left",
               "USE_EXT" => "N"
               ),
               false,
               array(
               "ACTIVE_COMPONENT" => "Y"
               )
            );

Но в этом случае в меню выводятся подразделы только тех страниц, где меню типа left. Если писать "CHILD_MENU_TYPE" => "right", то выводятся соответственно только подменю типа right.

Что делать, чтобы выводилось полное дерево меню, независимо от типов подменю?
То есть мне нужно получить "CHILD_MENU_TYPE" => "left, right".
спросил 17 Июль, 13 от KHOnKA (160 баллов)

3 Ответы

00 голосов
А почему вы отказались от использования только одного типа меню?
Ведь, если я правильно понял, то они у вас не пересекаются?
ответил 17 Июль, 13 от Almarea (3,760 баллов)
00 голосов
Страницы имеют разный дизайн. И в одном случае место под меню слева, в другом справа. Отличается вид меню и шаблон меню соответственно. Поэтому очевидно и были использованы два типа меню, чтобы можно было использовать для них разные шаблоны. Чувствую придётся объединять в одно, но с более сложным поведением шаблона. Нет других идей как собрать две выборки подменю в один массив и скормить его шаблону?

Да, если вопрос в том, почему есть меню второго уровня и оно ещё и добавляется в верхнее меню, то тут дело вот в чём. Меню верхнего уровня с заголовками разделов выводится на всех страницах сверху. Подразделы в нём выводятся в виде всплывающих менюшек. Также на своих страницах конкретные меню подразделов выводится в виде вертикального меню сбоку. Отсюда такие сложности.
ответил 07 Сен, 13 от KHOnKA (160 баллов)
00 голосов
Так Вы при вызове компонента меняйте не тип меню, а шаблон компонента.
ответил 05 Дек, 13 от Almarea (3,760 баллов)

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

0 голосов
4 ответов
спросил 18 Ноя, 13 от BAPKAH (100 баллов)
0 голосов
3 ответов
0 голосов
3 ответов
0 голосов
1 ответ
0 голосов
2 ответов
спросил 18 Апр, 14 от SaNCHeZzz (120 баллов)