Si vous connaissez le slug du menu, alors les choses sont plus faciles, sinon vous pouvez utiliser cette fonction pour obtenir le menu à un emplacement spécifié.
<?php
function wpse45700_get_menu_by_location( $location ) {
if( empty($location) ) return false;
$locations = get_nav_menu_locations();
if( ! isset( $locations[$location] ) ) return false;
$menu_obj = get_term( $locations[$location], 'nav_menu' );
return $menu_obj;
}
?>
alors
//if you after the menu the menu with a specific ID / Slug
//$menu_obj =wp_get_nav_menu_object($id_slug_or_name);
//if you after the menu at a specific location
$menu_obj = wpse45700_get_menu_by_location($location);
echo "<h3>".esc_html($menu_obj->name)."</h3>";
//Display menu here
Ou, plutôt que de faire écho au HTML, vous pouvez le passer dans le cadre de l'argument de l'attribut items dans wp_nav_menu
.
Par exemple, pour afficher le menu à l'emplacement «principal»:
$location = 'primary';
$menu_obj = wpse45700_get_menu_by_location($location );
wp_nav_menu( array('theme_location' => $location, 'items_wrap'=> '<h3>'.esc_html($menu_obj->name).'</h3><ul id=\"%1$s\" class=\"%2$s\">%3$s</ul>') );
remplacez l'id 4 ci-dessous par l'id de votre menu. si vous ne connaissez pas l'identifiant, accédez à la page des menus de l'administrateur, faites un clic droit sur l'onglet du menu pour lequel vous souhaitez faire écho au titre, inspectez elemenent et l'identifiant sera répertorié comme menu = ID dans le lien.
la source
la réponse de stephen est bonne. mais je vais un peu plus loin:
en supposant que vous avez enregistré un emplacement de thème appelé "footer_navigation3" et auquel vous avez attribué un menu wp. placez maintenant ce code là où vous voulez afficher votre menu.
la source