WordPress NAV Walker没有显示

我有一个自定义的wordpress主题, 并且为导航实现了一个自定义的walker
在我的functions.php中, 我有以下代码

class My_Walker extends Walker_Nav_Menu { function start_el(& $output, $item, $depth, $args) { global $wp_query; $indent = ( $depth ) ? str_repeat( "\t", $depth ) : ''; $class_names = $valuehttp://www.srcmini.com/= ''; $classes = empty( $item-> classes ) ? array() : (array) $item-> classes; $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item ) ); $class_names = ' class="' . esc_attr( $class_names ) . '"'; $output .= $indent . '< li id="menu-item-'. $item-> ID . '"' . $value . $class_names .'> '; $attributes= ! empty( $item-> attr_title ) ? ' title="'. esc_attr( $item-> attr_title ) .'"' : ''; $attributes .= ! empty( $item-> target )? ' target="' . esc_attr( $item-> target) .'"' : ''; $attributes .= ! empty( $item-> xfn )? ' rel="'. esc_attr( $item-> xfn) .'"' : ''; $attributes .= ! empty( $item-> url )? ' href="'. esc_attr( $item-> url) .'"' : ''; $item_output = $args-> before; $item_output .= '< a'. $attributes .'> '; $item_output .= $args-> link_before . apply_filters( 'the_title', $item-> title, $item-> ID ) . $args-> link_after; $item_output .= '< br /> < span class="sub"> ' . $item-> description . '< /span> '; $item_output .= '< /a> '; $item_output .= $args-> after; $output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args ); } }

并在我的header.php中
< div id="access"> < ?php wp_nav_menu( array( 'theme_location' => 'primary', 'walker'=> new My_Walker )); ?> < /div>

但是当我查看页面源时, 元素中没有数据
< div id="access"> < div class="menu"> < ul> < li id="menu-item-5" class=""> < a> < br /> < span class="sub"> < /span> < /a> < /li> < li id="menu-item-8" class=""> < a> < br /> < span class="sub"> < /span> < /a> < /li> < li id="menu-item-10" class=""> < a> < br /> < span class="sub"> < /span> < /a> < /li> < li id="menu-item-13" class=""> < a> < br /> < span class="sub"> < /span> < /a> < /li> < li id="menu-item-15" class=""> < a> < br /> < span class="sub"> < /span> < /a> < /li> < li id="menu-item-17" class=""> < a> < br /> < span class="sub"> < /span> < /a> < /li> < /ul> < /div> < /div>

假设这是一个简单的助行器, 但我无法正常工作
#1更改:
'walker'=> new My_Walker

至:
'walker'=> new My_Walker()

#2遇到同样的问题, 希望你已经进入wp-admin来正确设置菜单了吗?转到wp-Admin-> Design-> Menus并单击保存按钮为我解决了这个问题。
【WordPress NAV Walker没有显示】因为我在开发区中尝试过, 所以我只想在nav_menu中有一个示例站点。有趣的事实是, walker函数将触发, 并获取博客中所有页面的ID。但是$ item-> title为NULL。

    推荐阅读