如何激活菜单的第一个元素

时间:2017-08-16 10:48:21

标签: wordpress

现在,如果我点击某个菜单项,我的菜单会变为活动状态,但是当网站刚刚加载时,它没有活动菜单,所以我想让第一个li处于活动状态。

此代码通过添加current-menu-item

来生成活动菜单
    add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);

    function special_nav_class ($classes, $item) {
        if (in_array('current-menu-item', $classes) ){
            $classes[] = 'active';
        } 
        return $classes;
    }

function main_menu() {
    add_theme_support('menus');
    register_nav_menus(array(
        'primary' => __('Primary Main Menu'),
    ));
    register_nav_menus(array(
        'secondary' => __('Primary Portfolio Navigation'),
    ));
}

$args = array(
    'container' => '',
    'menu_id' => false,
    'items-wrap' => '%3$s',
    'theme_location' => 'primary'
);

wp_nav_menu($args);

1 个答案:

答案 0 :(得分:0)

不需要该过滤器代码,只需执行以下操作:

1-在functions.php中注册一个菜单

add_theme_support( 'menus' );
if ( function_exists( 'register_nav_menus' ) ) {
    register_nav_menus(
        array(
           'top-menu' => 'Top Menu'
        )
    );
}

2-然后在您的代码中,您只需要输入以下代码:

<ul>
    <?php wp_nav_menu(array('theme_location'=>'top-menu','container'=>'', 'items_wrap' => '%3$s')); ?>
</ul>

3-最后转到管理面板,外观 - &gt;菜单,选择Top Menu并填入您的页面,这应该处理所有active个html类,没有必要这样做手动