第1页 第2页 第1类 第3页
因此,当类别1处于活动状态时,第2页获得.current-menu-ancestor,这很好……但是,一旦查看类别1的帖子,则页面2没有特定的类……但是类别1则具有.current-menu-ancestor如预期的那样。
所以最后这里是一个问题:我如何为这些.current-postsant父母分配一个班级?
我正在寻找一个PHP解决方案。 Javascript / jQuery非常清晰……这是一个jQuery解决方案,用于更好地理解我想做什么(对于那些有相同问题并且对JS解决方案感到满意的人):
jQuery('li.current-post-ancestor')。parents('li.menu-item')。addClass('current-menu-ancestor');
答案 0 :(得分:1)
这可能是您要寻找的。 add_filter('wp_nav_menu_objects','add_menu_parent_class'); 函数add_menu_parent_class($ items){
$parents = array();
foreach ( $items as $item ) {
if ( in_array('current-post-ancestor', $item->classes) ) {
$parents[] = $item->menu_item_parent;
}
}
foreach ( $items as $item ) {
if ( in_array( $item->ID, $parents ) ) {
$item->classes[] = 'current-menu-ancestor';
}
}
return $items;
}
它将为当前后祖菜单项parent添加一个类。我已经在主题中尝试过了,并且效果很好。