如何为第二级和第三级<li>添加类



我在菜单中有3个级别:顶级-第二级-第三级。对于第一级li,我用以下代码添加了类:

//This function is responsible for adding class to parent menu item's
function add_menu_parent_class($items)
{
$parents = array();
foreach ($items as $item) {
//Check if the item is a parent 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)) {
//Add class to parents
$item->classes[] = 'menu-item__parent';
}
}
return $items;
}
add_filter('wp_nav_menu_objects', 'add_menu_parent_class');

现在我需要为第二层添加一个单独的类li和一个单独的类用于第三层li. 我该怎么做呢?

你可以很容易地检查参数是否有孩子,然后为这些孩子添加你的类

if ( $args->has_children ) {
//trait to add class 
}

最新更新