首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >三级导航级

三级导航级
EN

WordPress Development用户
提问于 2019-01-24 13:29:51
回答 1查看 1.7K关注 0票数 2

我目前正在进行第三级导航。输出应该如下所示:

代码语言:javascript
复制
    Level 1
    
      
        Level 2
        
          Level 3

是否有方法将自定义类添加到第三级列表中?我用自定义步行器完成了第二级任务:

代码语言:javascript
复制
class Main_Nav_Walker extends Walker_Nav_Menu {
    function start_lvl(&$output, $depth = 0, $args = Array() ) {
        $indent = str_repeat("\t", $depth);
        $output .= "\n$indent\n";
    }
}
EN

回答 1

WordPress Development用户

回答已采纳

发布于 2019-01-24 20:00:03

你不需要为此写你的自定义沃克。

让我们来看看内置的Walker_Nav_Menu你会发现这个函数

代码语言:javascript
复制
public function start_lvl( &$output, $depth = 0, $args = array() ) {
    if ( isset( $args->item_spacing ) && 'discard' === $args->item_spacing ) {
        $t = '';
        $n = '';
    } else {
        $t = "\t";
        $n = "\n";
    }
    $indent = str_repeat( $t, $depth );

    // Default class.
    $classes = array( 'sub-menu' );

    /**
     * Filters the CSS class(es) applied to a menu list element.
     *
     * @since 4.8.0
     *
     * @param array    $classes The CSS classes that are applied to the menu `` element.
     * @param stdClass $args    An object of `wp_nav_menu()` arguments.
     * @param int      $depth   Depth of menu item. Used for padding.
     */
    $class_names = join( ' ', apply_filters( 'nav_menu_submenu_css_class', $classes, $args, $depth ) );
    $class_names = $class_names ? ' class="' . esc_attr( $class_names ) . '"' : '';

    $output .= "{$n}{$indent}{$n}";
}如您所见,其中有一个过滤器(nav_menu_submenu_css_class),它允许您修改列表项的类。所以你所要做的就是把你的过滤器添加到那个钩子上:function change_ul_item_classes_in_nav( $classes, $args, $depth ) {
    if ( 0 == $depth ) {
        $classes[] = 'sub';
    }
    if ( 1 == $depth ) {
        $classes[] = 'subsub';
    }
    // ...
    return $classes;
}
add_filter( 'nav_menu_submenu_css_class', 'change_ul_item_classes_in_nav', 10, 3 );
票数 3
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/326564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档