2012-10-12 51 views
10

mi URL tiene el siguiente aspecto: http://domain.com/?s=searchquery&post_type=qa_faqswp_nav_menu mal representada

que las listas de resultados de búsqueda para "SearchQuery".

i luego obtener el tipo de post con

$post_type = $_GET['post_type']; 

se hace eco correctamente

echo $post_type; 
// Provides: qa_faqs 

i luego hacer un if/else para mostrar un menú diferente a través de wp_nav_menu cuando $ post_type es 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)); 
} 

ahora a la parte divertida:

a pesar de que la página se hace eco 'llegamos qa_faqs más de aquí', muestra el service_menu.

¿por qué es eso?

+0

Saque ambos menús fuera de la lógica y déjelos salir, ¿son lo mismo? – SMacFadyen

+0

no son lo mismo, es por eso que quiero mostrar meta_menu si $ post_type es 'qa_faqs' y service_menu si $ post_type no es 'qa_faqs'. – joko13

+0

Tengo el mismo problema (http://pastebin.com/H0GzFJz2) ambos generan el menú social cuando el superior debe mostrar el menú del encabezado, muy extraño. – Neros

Respuesta

31

lo encontró - http://codex.wordpress.org/Navigation_Menus

El mismo problema me estaba volviendo aswell nueces.

Use 'theme_location' en lugar de 'menú' para señalar a qué menú desea dar salida.

+0

Esto me ayudó, ¡gracias! ¿Podrías explicar por qué funcionó? –

+0

Ha pasado un tiempo, así que no sé si recuerdo correctamente, pero creo que 'menú' es el nombre del menú que desea usar y 'ubicación_tema' es donde desea poner ese menú – Neros

+0

. También tropecé con este problema. Creo que tomó aproximadamente 1 hora antes de que realmente lo resolviera. +1 – Cyclonecode

0

Creo que no tiene ningún elemento en el meta_menu. Por favor, cree el menú en la sección Apariencia y asígnelo. :)

+0

Tanto el menú_servicio como el meta_menú están configurados correctamente en el back-end y funcionan como se espera en otros archivos de plantilla. – joko13

3

Trate que apuntan al menú específico con algo como:

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