Con la función
wp_list_categories() resuelves lo de listar automáticamente las categorías. Ahora, si ese menú consta de otros elementos, ahí si tienes que codear algo un poco más complicado.
Cuando digo otros elementos, me refiero a que tengas un link al Home u otras páginas, pues ya el menú sería un poco más complicado.
Para agregar elementos a un menú puedes usar un filtro, algo así:
Código PHP:
Ver originalfunction my_custom_menu( $nav, $args ) {
if ( $args->theme_location == 'primary' ) :
$nav .= '<li>';
$nav .= _e('News', 'twentyeleven');
$nav .= '<ul>'.wp_list_categories().'</ul>';
$nav .= '</li>';
endif;
return $nav;
}
add_filter( 'wp_nav_menu_items', 'my_custom_menu', 10, 2 );
Te advierto que ese código lo saqué a partir de uno que tengo agregando otros elementos, no lo he probado, pero supongo que si no funciona, andarás cerca...
Saludos.