我想添加&#34;有效&#34;类<祖> 活动菜单项
我找到了这段代码,但即使不是活跃的孙子,它也会向父级添加类
add_filter( 'wp_nav_menu_objects', 'add_menu_parent_class' );
function add_menu_parent_class( $items ) {
$parents = array();
foreach ( $items as $item ) {
if ( $item->menu_item_parent && $item->menu_item_parent > 0 ) {
$parents[] = $item->menu_item_parent;
}
}
foreach ( $items as $item ) {
if ( in_array( $item->ID, $parents ) ) {
$item->classes[] = 'menu-parent-item';
}
}
return $items;
}
如何按功能制作?
答案 0 :(得分:0)
你可以使用jQuery:
将活动类添加到li.current-post-ancestor的父菜单项:
$('.li.current-post-ancestor').parent().parent().addClass('active');
请注意,第一个parent()将您带到父ul元素,第二个parent()将您带到ul的li父级。
我总是喜欢在PHP中做一些事情,但有时在jQuery中破解它会容易得多!你可能会非常喜欢并写一个custom menu walker,但这是很多工作。