我在这里有很长的导航,我必须导入到WordPress。
<header class="small">
<div class="yellow-stripe"></div>
<div class="container">
<nav role="navigation">
<ul class="navigation">
<li>
<a href="aboutus">About us</a>
<ul class="sub-navigation">
<li><a href="">We are</a></li>
<li><a href="">Our story</a></li>
<li><a href="why">Why Ledil</a></li>
<li><a href="contacts-europe">Where</a></li>
<li><a href="management">Management</a></li>
<li><a href="">Investors</a></li>
</ul>
</li>
<li><a href="../news_all">News</a></li>
<li><a href="../events_calendar">Events</a></li>
<li><a href="../qa">FAQ</a></li>
</ul>
</nav>
<ul class="lang">
<li class="active"><a href="">EN</a></li>
<li><a href="">ES</a></li>
<li><a href="">RUS</a></li>
</ul>
</div>
<div class="nav-button">
<div class="line"></div>
<div class="line"></div>
<div class="line"></div>
</header>
它是用HTML制作的,现在我必须将它导入WordPress。我得到WordPress包含标题,并加载整个事情就好了,它在页面上看起来很棒,但我需要添加class =“active”for bootstrap nav到当前页面和子页面。
我通过谷歌搜索找到了一些答案,但我并没有真正走得太远。
我的function.php看起来像这样:
<?php
remove_filter('the_content', 'wpautop');
remove_filter('the_excerpt', 'wpautop');
add_filter('nav_menu_css_class', 'special_nav_class', 10, 2);
function special_nav_class($classes, $item){
if( in_array('current_page_parent', $classes) ){
$classes[] = 'active ';
}
return $classes;
}
?>
我不确定我应该尝试什么。我发现整个WordPress的事情很奇怪。
这里似乎没有current_page_item课程..我应该做些什么来启用它吗?
li.current_page_parent a {}
无效,也不会在标记内设置class="<?php if (is_page('name-of-page')) echo 'active'; ?>"
...该死的WordPress ......
没关系..我只是有点慢......我把class="<?php if (is_page('why')) echo 'active'; ?>"
放在每个li元素中。
答案 0 :(得分:0)
如果有人在这里结束: 您应该检查页面是否处于活动状态,或者该页面是否是另一个页面的子页面
<li class="<?php if (is_page('offices')) echo 'active'; ?>"><a href="/offices">Offices</a></li>
检查页面是否为“办公室”和
<li class="<?php if (is_page_child(143)) echo 'active'; ?> echo 'active'; ?>">
检查页面是否为ID为“143”的页面的子页面,然后在class =“”内部回显“active”