Помощь с walker для nav

По какой-то причине этот ходок не будет работать, когда я перехожу в 'echo ' => 0 , он всегда печатает навигацию и никогда не возвращает nav в качестве var. Я не могу понять, где это, передавая это в WordPress. Есть ли шанс, что кто-нибудь может решить проблему?

 function bones_main_nav() { $menu_args = array( 'menu' => 'main_nav', /* menu name */ 'menu_class' => 'nav', 'echo ' => 0, 'theme_location' => 'main_nav', /* where in the theme it's assigned */ 'container' => 'false', /* container class */ //'fallback_cb' => 'bones_main_nav_fallback', /* menu fallback */ 'depth' => '2', /* suppress lower levels for now */ 'walker' => new description_walker() ); echo wp_nav_menu($menu_args); /* if(function_exists('new_beginnings')) { $topNav = wp_get_cache('topNav'); if ($topNav === false) { $topNav = wp_nav_menu($menu_args); print_r($topNav); wp_set_cache('topNav', $topNav, 4000); } echo $topNav; } else { echo wp_nav_menu($menu_args); } */ } // this is the fallback for header menu function bones_main_nav_fallback() { // not calling this in case of multiple level pages - hope to add dropdown menu as an enhancement //wp_page_menu( 'show_home=Home&menu_class=menu' ); } // this is the fallback for footer menu function bones_footer_links_fallback() { /* you can put a default here if you like */ } // Menu output mods class description_walker extends Walker_Nav_Menu { function start_el(&$output, $item, $depth, $args) { global $wp_query; $indent = ( $depth ) ? str_repeat( "\t", $depth ) : ''; $class_names = $value = ''; // If the item has children, add the dropdown class for bootstrap if ( $args->has_children ) { $class_names = "dropdown "; } $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 ) .'"' : ''; // if the item has children add these two attributes to the anchor tag if ( $args->has_children ) { $attributes .= 'class="dropdown-toggle" data-toggle="dropdown"'; } $item_output = $args->before; $item_output .= '<a'. $attributes .'>'; $item_output .= $args->link_before .apply_filters( 'the_title', $item->title, $item->ID ); $item_output .= $args->link_after; // if the item has children add the caret just before closing the anchor tag if ( $args->has_children ) { $item_output .= '<b class="caret"></b></a>'; } else{ $item_output .= '</a>'; } $item_output .= $args->after; $output .= apply_filters( 'walker_nav_menu_start_el', $item_output, $item, $depth, $args ); } function start_lvl(&$output, $depth) { $indent = str_repeat("\t", $depth); $output .= "\n$indent<ul class=\"dropdown-menu\">\n"; } function display_element( $element, &$children_elements, $max_depth, $depth=0, $args, &$output ) { $id_field = $this->db_fields['id']; if ( is_object( $args[0] ) ) { $args[0]->has_children = ! empty( $children_elements[$element->$id_field] ); } return parent::display_element( $element, $children_elements, $max_depth, $depth, $args, $output ); } }