2016-03-23 3 views
0

В моем приложении Wordpress wp_nav_menu не отображается. Другое меню работает по назначению.wp_nav_menu не отображается с указанием конкретной темы

Это невидимое:

<?php wp_nav_menu(array('theme_location' => 'mobile_menu', 'container_class'=>'my-mobile-wrapper')); ?> 

Это видно (как в header.php)

<?php wp_nav_menu(array('theme_location' => 'header_menu', 'container_class'=>'header-menu')); ?> 

Я прочитал предложение от где-то, но добавив в functions.php не Работа.

add_action('pre_get_posts', 'my_pre_get_posts'); 
    function my_pre_get_posts($query) { 
     if ($query->get('post_type') === 'nav_menu_item') { 
      $query->set('tax_query',''); 
     } 
    } 

зарегистрироваться следующим образом:

if (!function_exists('my_register_menus')) { 
    function my_register_menus() { 

     register_nav_menus(
      array(
       'header_menu' => __('Header Menu', "my"), 
       'mobile_menu' => __('Mobile Menu', "my") 
      ) 
     ); 

    } 
} 

add_action('after_setup_theme', 'my_register_menus'); 

Благодаря сейчас.

ответ

0

OK Я нашел ответ.

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

add_filter('wp_nav_menu_items', 'my_extend_menu_content', 10, 2); 

function my_extend_menu_content($items, $args){ 
    switch .... for menus other than mobile. 

    // After the switch block: 
    return false; // which is wrong. 
    return $items; // should be this way. 
} 
Смежные вопросы