如何使用Walker菜单使用AMP创建多级导航?

时间:2019-03-06 00:04:54

标签: wordpress amp-html wp-nav-walker

我正在将AMP与wordpress一起使用。 我找到了这段代码,但只显示了2个级别:https://github.com/better-studio/better-amp/blob/master/includes/classes/class-better-amp-menu-walker.php

这就是我叫菜单的方式

wp_nav_menu( array(
            'menu'              => 'primary',
            'depth'             => 2,
            'container'         => 'nav',
            'container_class'   => 'amp-menu swipe-menu hidden-desktop',
            'container_id'      => 'amp-menu',
            'menu_class'        => 'nav navbar-nav',
            'walker'            => new Walker_AMP_Menu())
        );

有什么办法可以使其成为多层次的? 样本:

item 1
item 2
  -item 2.1
  -item 2.1
     -item 2.1.1
     -item 2.1.2
item 3
item 4
item 5

1 个答案:

答案 0 :(得分:0)

问题显然在本节中,它仅允许2个级别

if ( $this->has_children && $depth == 0) {
        add_theme_support( 'better-amp-has-nav-child', TRUE );

        $this->start_accordion( $output, $depth );

        $output .= '<h6 class=' .$depth.'><span ' . $class_names . '>';
        $output .= $this->get_anchor_tag( $item, $depth, $args, $id );
        $output .= '</span></h6>';

        $this->start_accordion_child_wrapper( $output, $depth );

    } else {

        $output .= '<span id='.$depth.' ' . $class_names . '>';
        $output .= $this->get_anchor_tag( $item, $depth, $args, $id );
        $output .= '</span>';

    }