Je suis débutant dans le wordpress et, à l'heure actuelle, j'ai du mal à comprendre les menus personnalisés. J'ai créé deux menus. Wordpress me dit que le thème prend en charge deux menus. j'ai
<?php wp_nav_menu('menu=services_menu'); ?>
Où je veux qu'un menu apparaisse. j'ai
<?php wp_nav_menu('menu=left_navigation'); ?>
Où je veux que l'autre menu apparaisse.
J'ai
<?php
if ( function_exists( 'register_nav_menus' ) ) {
register_nav_menus(
array(
'services_menu' => 'Services menu',
'left_navigation' => 'Left vertical navigation Menu'
)
);
}
?>
Dans functions.php.
Les deux menus apparaissent sous "Apparence -> menus -> Emplacements des thèmes" et sont associés correctement. Mais seul le menu des services apparaît jamais, dans les deux endroits. J'ai lu de nombreuses solutions pour y parvenir, dont aucune ne semble avoir d'autre résultat que celui décrit ci-dessus. Où vais-je mal?
Le problème est que wp_nav_menu()
ne devrait vraiment jamais appeler theme_location
, pas menu
.
Le thème définit les emplacements de menu , puis place ces emplacements de menu dans le modèle. L'utilisateur définit les menus et attribue les menus aux emplacements de thème .
Alors changez ceci:
<?php wp_nav_menu('menu=services_menu'); ?>
...pour ça:
<?php wp_nav_menu( 'theme_location=services_menu' ); ?>
<?php wp_nav_menu( array('menu' => 'menu name' )); ?>
peut-être?