¿Será que estás usando mal el hook? Mira, prueba este pedazo de código, que es como viene en twentyeleven:
Código PHP:
Ver original<?php
/** Tell WordPress to run twentyten_setup() when the 'after_setup_theme' hook is run. */
add_action( 'after_setup_theme', 'twentyten_setup' );
function twentyten_setup() {
// This theme uses wp_nav_menu() in one location.
register_nav_menus
( array( 'primary' => __( 'Primary Navigation', 'twentyten' ),
'secondary' => __( 'Secondary Menu', 'twentyten' ),
) );
}
endif;
?>
Originalmente viene para un solo menú, pero le he agregado otro para que veas que si funciona... Igual fíjate en el hook: after_setup_theme()
Como plus, y para que no cometas errores ya cometidos por otros, por ejemplo: Yo, fíjate que la función __() tiene dos parámetros, el primero es una cadena de texto que en algún momento querrás traducir a tu idioma (o al que sea) y el segundo es el text domain, para indicarle a la función qué idioma estás usando... Para más info
mira aquí en las funciones de
Localization
Saludos.