wp_nav_menu()没有分配ul类

3

使用wp_nav_menu()似乎不能很好地将类分配给我的ul元素。这是我的菜单代码:

wp_nav_menu( array( 
    'container' => false,
    'menu_class' => 'nav navbar-nav navbar-left',
    'theme_location' => 'primary'
) );

问题在于,即使我尝试将 container 设置为 false 或 '',它仍然将我的菜单类分配为容器类。这是我的导航栏 html 代码:
<div class="nav navbar-nav navbar-left">
  <ul>
    <li class="page_item page-item-31"><a href="https://wordpress-c9-bradydowling.c9.io/?page_id=31">Contact Us</a></li>
    <li class="page_item page-item-5"><a href="https://wordpress-c9-bradydowling.c9.io/?page_id=5">My Little Page</a></li>
    <li class="page_item page-item-2"><a href="https://wordpress-c9-bradydowling.c9.io/?page_id=2">Sample Page</a></li>
  </ul>
</div>

以下是我的header.php文件的完整代码:点击查看。根据wp_nav_menu文档,这似乎是正确的调用方式。

是否有某个设置或某个插件的版本会引起问题?我使用的是WordPress 4.4.2版本,这会有影响吗?

3个回答

5
如果菜单(WP管理区域)未设置,则“nav navbar-nav navbar-left”将应用于“container”。换句话说,它会覆盖“container_class”。
如果菜单已设置,则“menu_class”将应用于“ul”。

2
也许这是常见的 WP 术语(我不熟悉),但或许您可以更清楚地说明需要勾选菜单名称旁边的复选框才能为主题设置菜单。 - Brady Dowling
顺便提一下,在我的主题中,我应该将其设置为条件语句,并说如果没有设置,它应该只获取一些我样式化的页面列表吗?这似乎是一个非常容易在 WP 管理员中调整设置之前意外拥有非样式化菜单的方法。 - Brady Dowling

0

我曾经遇到过同样的问题,但被标记为解决方案的答案对我并没有起作用。后来我发现是自己犯了一个小错误,我的菜单名称与这个函数:register_nav_menus不匹配。


0
在我的情况下,items_wrap 模板中缺少类。
'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接