当前菜单项类不适用于我的主题中的特定菜单,我的css代码为
.mainNav ul li a {
color: #686868;
font-size: 14px;
height: 38px;
line-height: 38px;
display: inline-block;
padding: 0 10px;
border-radius: 2px;
}
.mainNav ul li.current-menu-item a,
.mainNav ul li.current-menu-item a:focus {
background: #69bd43;
color: #ffffff;
}
.mainNav ul li a:hover {
background: #69bd43;
text-decoration: none;
color: #ffffff;
}
。主导航ul li a:悬停
和
.主导航ul li a
正在工作
但是
.mainNav ul li。当前菜单项a。主导航ul li。当前菜单项a:焦点
不工作
请参见下面的屏幕截图
“天然食品”菜单中的当前菜单项
但不在“Books”菜单中工作
请参见下面的屏幕截图
在我的标题中。php
<nav class="mainNav">
<?php
$args = array(
\'theme_location\' => \'primary\'
);
?>
<ul class="container"><?php wp_nav_menu( $args ); ?></ul>
</nav><!-- End mainNav -->
以我的风格。css
/* Header */
.mainNav {
background: #ffffff;
margin-top: 45px;
}
.mainNav ul li {
display: inline-block;
}
.mainNav ul li a {
color: #686868;
font-size: 14px;
height: 38px;
line-height: 38px;
display: inline-block;
padding: 0 10px;
border-radius: 2px;
}
.mainNav ul li.current-menu-item a,
.mainNav ul li.current-menu-item a:focus {
background: #69bd43 !important;
color: #ffffff;
}
.mainNav ul li a:hover {
background: #69bd43;
text-decoration: none;
color: #ffffff;
}
最合适的回答,由SO网友:vguerrero 整理而成
这是因为菜单项是使用页面“books”创建的,但当前显示的页面是post-type archive books(请参见正文和菜单项列表中的类)。你可以使用
function add_nav_menu_classes($classes, $item)
{
if (is_post_type_archive(\'books\') && ($item->title == "Books")) {
$classes[] = \'current-menu-item\';
}
return $classes;
}
add_filter(\'nav_menu_css_class\' , \'add_nav_menu_classes\' , 10 , 2);
放置在函数中。php强制在post-type archive books中向books页面菜单项添加“current menu item”类。
Edit:一种可能更好的方法是在nav菜单中实际插入post类型的存档,这样就不需要过滤器了。