Неверно отображается wp_nav_menu

мой url выглядит так: http://domain.com/?s=searchquery&post_type=qa_faqs

на этой странице перечислены результаты поиска для "searchquery".

i, тогда получите тип сообщения с

$post_type = $_GET['post_type'];

он правильно воспроизводит

echo $post_type;
// Provides: qa_faqs

i затем выполните if/else, чтобы отобразить другое меню через wp_nav_menu, когда $post_type является qa_faqs.

if ( $post_type == 'qa_faqs' ) {
  echo 'we got qa_faqs over here';
  wp_nav_menu(array('menu' => 'meta_menu', 'items_wrap' => '<dl id="%1$s" class="nice tabs vertical %2$s">%3$s</dl>', 'walker' => new sidenav_walker ));
} else {
  echo 'no qa_faqs in da house';
  wp_nav_menu(array('menu' => 'service_menu', 'items_wrap' => '<dl id="%1$s" class="nice tabs vertical %2$s">%3$s</dl>', 'walker' => new sidenav_walker ));
}

теперь к смешной части:

хотя страница перекликается с "мы получили qa_faqs здесь", она отображает service_menu.

зачем это?

Ответ 1

Найдено - http://codex.wordpress.org/Navigation_Menus

Такая же проблема сводила меня с ума.

Используйте "theme_location" вместо "menu", чтобы указать, к какому меню вы хотите вывести.

Ответ 2

Попробуйте настроить конкретное меню примерно так:

<?php wp_nav_menu( array('menu' => 'Your Menu Name' )); ?>

Ответ 3

Я думаю, что у вас нет элементов в meta_menu. Создайте меню в разделе "Внешний вид" и назначьте его.:)