Fallback_cb возится с контейнерами

У меня есть следующий код для пользовательской области меню:

$wp_nav_header = array( 'container' => '', 'menu_class' => 'sf-menu', 'fallback_cb' => 'wp_page_menu', 'theme_location' => 'primaryheader', 'depth' => 0,); wp_nav_menu( $wp_nav_header); 

Он отлично работает, когда есть меню на месте, и выходы:

 <div id="nav-main"> <div class="sf-menu"> <ul><li... 

Однако, когда он отступает , он выводит:

 <div id="nav-main"> <ul id="menu-default" class="sf-menu"><li... 

Излишне говорить, что это отбрасывает мой дизайн, поскольку он добавляет эти классы (для которых у меня нет стиля) и зачистки suckerfish, но заставляет мой навигатор исчезать (несмотря на появление в источнике).

Кто-нибудь сталкивался с этим раньше?

Спасибо!

Solutions Collecting From Web of "Fallback_cb возится с контейнерами"

в основном вам не хватает контейнера div, поэтому, если вы измените резервную копию на пользовательскую функцию, вы можете передать параметры в wp_page_menu, что даст вам немного контроля над ним и добавит недостающую команду div:

 $wp_nav_header = array( 'container' => '', 'menu_class' => 'sf-menu', 'fallback_cb' => 'my_fallback_menu', 'theme_location' => 'primaryheader', 'depth' => 0,); wp_nav_menu( $wp_nav_header); function my_fallback_menu(){ echo '<div class="sf-menu">'; $args = array( 'sort_column' => 'menu_order, post_title', 'menu_class' => '', 'include' => '', 'exclude' => '', 'echo' => true, 'show_home' => false, 'link_before' => '', 'link_after' => '' ); wp_page_menu($args); echo '</div>'; } 

Надеюсь это поможет