如何为WordPress菜单分配ID

时间:2013-01-11 作者:Steve

以下代码不会生成ID为“nav”的UL。它只是产生

<div class="menu"><ul>
代码如下:

wp_nav_menu( array( \'theme_location\' => \'menu-1\', \'container_id\'    => \'nav\'; 
根据WP Codex 这应该行得通。为什么不起作用?

WP版本=3.5

Update

我现在有:

wp_nav_menu( array( \'theme_location\' => \'menu-1\', \'items_wrap\' => \'<ul id="nav">%3$s</ul>\', \'menu_id\' => \'nav\'));
但这也不行。

4 个回复
SO网友:Joseph Leedy

根据该法典页面,您需要使用menu_id. container_id 仅影响周围的div。

SO网友:fuxia

的正确参数ulmenu_id, 对于容器container_id. 但是ul 仅当您通过…

\'<ul id="%1$s" class="%2$s">%3$s</ul>\'
…作为items_wrap 论点

您可以按如下方式硬编码值:

wp_nav_menu(
    array (
    \'items_wrap\'      => \'<ul id="nav">%3$s</ul>\'
    \'theme_location\' => \'top-menu\'
    )
);
请参见Any docs for wp_nav_menu\'s “items_wrap” argument?

SO网友:Rohit Pande

按照我的想法menu-1 必须是ID 您的菜单。请阅读有关参数的信息here 并提供适当的参数。

根据我的说法,你的代码应该是

wp_nav_menu( array( \'menu\' => \'menu-1\', \'container_id\'    => \'nav\' ));

SO网友:M3o

这可能会有帮助,这有助于我理解。

    <?php wp_nav_menu( array(
            \'menu\' => 0,
            \'container\' =>false,
            \'menu_class\' => \'nav\',
            \'echo\' => true,
            \'before\' => \'\',
             \'after\' => \'\',
             \'link_before\' => \'\',
             \'link_after\' => \'\',
             \'depth\' => 0,
            \'walker\' => new description_walker())
             );?>
这将在创建菜单时提供菜单的随机id。希望有帮助,不确定我是否正确理解了这个问题。

结束

相关推荐

Wordpress Custom Menus Issue

在我的模板中,我使用这样的调用来输出一些自定义菜单:<?php wp_nav_menu(array(\'container_class\' => \'secondary-navigation\', \'theme_location\' => \'secondary\')); ?> 自从升级到WordPress 3.1.4后,我就可以获得完整的页面列表,而不是自定义菜单我看到修复程序(通过谷歌)说我应该添加以下内容来修复此问题:\'fallback_cb\' => f