php 如何为二、三级增加班级< li>

oiopk7p5  于 2023-01-08  发布在  PHP
关注(0)|答案(1)|浏览(104)

我在菜单中有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。我该怎么做呢?

x8diyxa7

x8diyxa71#

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

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

相关问题