register_nav_menus() no registra los menús
Por favor, ayuda con el registro de menús:
He seguido esta guía (http://codex.wordpress.org/Navigation_Menus) paso a paso.
Agregué el siguiente código a functions.php:
function register_my_menus() {
register_nav_menus(
array('header-menu' => __( 'Menú del Encabezado' ) )
);
}
add_action( 'init', 'register_my_menus' );
Pero la guía dice que esto hará que el menú aparezca en la pantalla de administración de Apariencia -> Menús en el cuadro "Ubicaciones del Tema" como "Menú del Encabezado".
Cuando voy a Apariencia -> Menús todo está deshabilitado y no hay opción de "Ubicaciones del Tema"
No necesitas agregar ninguna acción para registrar tu Menú de Navegación. Aquí tienes unos pasos rápidos para que tu Menú de Navegación de Wordpress funcione...
Registrar Menú de Navegación
if (function_exists('register_nav_menu'))
{
register_nav_menu('header_menu', 'Menú de Cabecera');
}
Definir y Usar el Menú de Navegación en tu Tema: Normalmente colocamos el código DIV del Menú en el archivo header.php; así que asumo que el tuyo también está ahí. Abre ese archivo y localiza el contenedor DIV donde deseas que aparezca el menú NAV de Wordpress. Aquí tienes un ejemplo de uno de mis temas recientes de Wordpress como referencia:
<div class="css-nav" >
<?php wp_nav_menu( array(
'sort_column' => 'menu_order',
'theme_location' => 'header_menu',
'menu_class' => 'css-menu',
'title_li' => '<div class="l"></div>',
'link_before' => '<span class="l">',
'link_after' => '</span>'
) ); ?> </div>
Una vez que agregues este código, ve a tu WP Admin - Menús. Crea un nuevo Menú, si aún no tienes ninguno. Tan pronto como crees un menú, deberías ver la caja meta "Ubicación del Tema" en el lado izquierdo de tu área de organización de elementos del menú.
Espero que esto te ayude. :-)
Saludos,
Ruturaj.
+1 por una respuesta bien formateada y de calidad de un nuevo usuario. Bienvenido a WPSE. :)
Jared
function_exists('register_nav_menu') no hace nada útil: nav-menu.php se carga antes que el functions.php del tema (ver wp-settings.php). 'sort_column' y 'title_li' no son argumentos válidos.
fuxia
Gracias... ¡Esto funciona! ¡Por fin! La documentación en Wordpress necesita una actualización seria
php-b-grader
¡Guau! Una de las 3 ubicaciones de menú apareció tan pronto como puse (function_exists('register_nav_menu')), pero ¿cómo hago que aparezcan las otras dos? if (function_exists('register_nav_menu')) {
`register_nav_menus('headerMenuLocation', 'Header Menu Location');`
`register_nav_menus('footerLocationOne', 'Footer Location One');`
`register_nav_menus('footerLocationTwo', 'Footer Location Two'); }`
YCode