Wordpress - How do I get the name of a menu in WordPress?
On WordPress version 4.9.0 and above you can use
wp_get_nav_menu_name($location)
wp_nav_menu_name for more
You can access the menu metadata using the wp_get_nav_menu_object
function
BY NAME:
$menu = wp_get_nav_menu_object("my mainmenu" );
BY SLUG:
$menu = wp_get_nav_menu_object("my-mainmenu" );
The return object as follows:
Object (
term_id => 4
name => My Menu Name
slug => my-menu-name
term_group => 0
term_taxonomy_id => 4
taxonomy => nav_menu
description =>
parent => 0
count => 6
)
To display the name:
echo $menu->name;
You can get the name like this, using the menu location, so if the menu is updated or you assign other menu you dont have to update anything here:
$locations = get_nav_menu_locations(); //get all menu locations
$menu = wp_get_nav_menu_object($locations['name_of_the_menu_location']);//get the menu object
echo $menu->name; // name of the menu
the 'name_of_the_menu_location'
is the one you use to output a menu using wp_nav_menu
<?php
wp_nav_menu(array(
'theme_location' => 'footer'//this value
));
?>