【问题标题】:How to print a custom menu in Drupal 7?如何在 Drupal 7 中打印自定义菜单?
【发布时间】:2011-06-16 23:34:42
【问题描述】:

我在 Drupal 7 中创建了一个菜单,并在该菜单下创建了指向页面的链接。

我将新菜单命名为“站点菜单”

在我希望我的菜单出现的 page.tpl.php 中,我已将其放置到位:

<?php print theme('links', menu_navigation_links('menu-site-menu')); ?>

在我清除缓存并刷新页面后,我的菜单不会出现。

我被难住了。任何帮助将不胜感激。

【问题讨论】:

    标签: drupal menu


    【解决方案1】:

    嗯,上面的打印菜单解决方案有点令人困惑。但是下面的代码对我有用,希望这对你们都有用,

        $search_menu_name = "menu-search-box-menu";
    
       print theme('links', array('links' => menu_navigation_links($search_menu_name), 'attributes' => array('id' => $search_menu_name, 'class'=> array('links', 'inline'))));
    

    上面的代码是这样的,“menu-search-box-menu”是我自定义的菜单名/ID。您可以在该特定菜单编辑链接中找到它。

    享受。 :)

    【讨论】:

      【解决方案2】:

      Berdir 的答案是正确的。 Drupal 7 theme_links 函数也更广泛地使用数组。例如,如果您想向 中添加另一个类名,您可以这样编码:

      <?php print theme('links', array('links' => menu_navigation_links('menu-site-menu'), 'attributes' => array('class'=> array('links', 'site-menu')) ));?>
      

      【讨论】:

        【解决方案3】:

        theme() 现在接收一个参数数组。例如:

        <?php
        print theme('links', array('links' => menu_navigation_links('menu-site-menu')));
        ?>
        

        【讨论】:

        • 感谢您的回复。不幸的是,它并没有解决我的问题。我会再调查一下。再次感谢。
        • 好吧,你确定你对 menu_navigation_links() 的参数是正确的并且它返回你的菜单吗?尝试使用 debug() 或 dpm() 直接打印(如果您安装了 devel.module)。另见api.drupal.org/api/drupal/modules--system--page.tpl.php/7/…,寻找主菜单,这就是核心显示菜单的方式。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多