我对使用 BootStrap CSS框架的以下WordPress自定义主题感到疯狂:http://onofri.org/WP_BootStrap/
正如您所看到的,我的标题中的水平主菜单出现问题。
要创建具有经典BootStra样式的WP动态主菜单,我使用 wp-bootstrap-navwalker.php 类将其插入到我的主题中,然后按照其文档阅读:{{3 }}
因此,根据之前的文档,我执行了以下操作:
1)我已将** wp_bootstrap_navwalker.php **类放在我的自定义主题的根目录中
2)我在 functions.php 文件中要求它,并输入以下代码:
// Register Custom Navigation Walker
require_once('wp_bootstrap_navwalker.php');
3)在我的 header.php 文件中,我插入了以下代码:
<body>
<!-- Header e barra di navigazione -->
<header>
<nav class="navbar navbar-default">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-responsive-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="<?php echo home_url(); ?>">
<?php bloginfo('name'); ?>
</a>
</div>
<?php
wp_nav_menu(array(
'menu' => 'primary',
'theme_location' => 'primary',
'depth' => 2,
'container' => 'div',
/*'container_class' => 'navbar navbar-default',*/
'menu_class' => 'nav navbar-nav',
'fallback_cb' => 'wp_bootstrap_navwalker::fallback',
'walker' => new wp_bootstrap_navwalker())
);
?>
</div>
</nav>
</header><!-- /header -->
4)最后我在我的主题中注册了导航菜单,将此代码放入 functions.php 文件中:
register_nav_menus(array(
'primary' => __('Primary Menu', 'THEMENAME'),
) );
好的,你可以看到我可以看到主菜单,但我看到它两次:一个是正确的可视化(红色背景的那个)但是出现了第二个主菜单,我无法理解为什么(我从不宣布它两次)
你对这个问题有所了解吗?我该如何解决?
TNX
安德烈
答案 0 :(得分:0)
在您的代码源中,我可以在您的页面中看到2个菜单。您想要摆脱的菜单是您页面中调用的第一件事。它属于这个div:
如果你不想要填充/边距,那么简单的方法是添加到你的CSS:
.navbar-collapse.collapse {
display: none;
}
但请查看您的网页来源,您在<!DOCTYPE html>
代码
<div class="collapse navbar-collapse navbar-ex1-collapse"><ul id="menu-menu-1" class="nav navbar-nav"><li id="menu-item-12" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home menu-item-12 active"><a title="Home" href="http://onofri.org/WP_BootStrap/">Home</a></li>
<li id="menu-item-13" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13"><a title="Sample Page" href="http://onofri.org/WP_BootStrap/?page_id=2">Sample Page</a></li>
<li id="menu-item-15" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-15"><a title="Google" href="http://google.com">Google</a></li>
</ul></div>
这是您需要删除的内容。此代码高于您在帖子中复制的代码,它也可能位于header.php文件中,具体取决于主题的组织方式。这是您页面中调用的第一件事。
答案 1 :(得分:0)
检查以确保您的&#34; functions.php&#34;中未列出您的wp_nav_menu函数调用。 doc以及header.php文件。
在我从&#34; functions.php&#34;中移除wp_nav_menu函数之前,我遇到了同样的问题。并且仅在我的header.php文件中包含它(以及参数)。我仍然在我的functions.php文件中执行以下操作:
add_theme_support(&#39;菜单&#39); register_nav_menu(&#39; primary&#39;,&#39; Primary Menu&#39;);
但是现在在我的header.php文件中,我把剩下的:
<?php
$defaults = array(
'theme_location' => 'primary',
'menu' => 'primary',
'container' => "nav",
'container_class' => false,
'container_id' => '',
'menu_class' => 'navigation',
'menu_id' => '',
'echo' => true,
'items_wrap' => '<ul class="%2$s">%3$s</ul>',
'depth' => 0,
);
wp_nav_menu( $defaults );
?>