Функция вывода меню с глубиной, есть ли такая?

Главные вкладки

Аватар пользователя artlosk artlosk 16 сентября 2011 в 17:02

Здравствуйте. На сайте есть горизонтальное меню (main-menu), оно реализовано с вложенностью. Выводится оно вверху страницы и внизу. Вверху оно реализовано как выпадающее, т.е. в настройках друпала стоит отображение всех меню и под-меню, выводится оно через <?phprender(menu_tree())?>. Внизу страницы мне надо его как то вывести без вложенности, т.е. только первый уровень, в функции menu_tree никаких других параметров нет, типа depth=0,1,2,3. Есть ли ещё какие другие функции, где можно было бы регулировать вложенность?

Комментарии

Аватар пользователя artlosk artlosk 16 сентября 2011 в 17:21

Нашёл вот такую запись и она работает

<?php print theme('links__system_main_menu', array(
          
'links' => $main_menu,
          
'attributes' => array(
            
'id' => 'main-menu-links',
            
'class' => array('links''clearfix'),
          ),
          
'heading' => array(
            
'text' => t('Main menu'),
            
'level' => 'h2',
            
'class' => array('element-invisible'),
          ),
        ));
?>

Только непонятно, если я создам своё меню, назову его допустим "blog-menu", как мне в дальнейшем к нему обращаться, что будет вместо links__system_main_menu и вместо $main_menu?

Аватар пользователя artlosk artlosk 16 сентября 2011 в 18:19

Решено, не знаю может и криво, но работает. Smile

Покопался в функциях API и нашёл вот такую menu_tree_page_data('имя меню', 'глубина'). Если глубина будет равняться нулю, то вложенность будет бесконечность, если же одному, то только первый уровень.

<?php
    $menu 
menu_tree_page_data('main-menu',1);
    print 
render(menu_tree_output($menu));
?>