Come ottenere il nome di un menu in WordPress?

18 feb 2017, 20:55:52
Visualizzazioni: 36.9K
Voti: 10

Sto attualmente configurando un menu nella sidebar con diversi menu e sezioni. Ogni sezione con il titolo (il nome del menu) e una serie di link sottostanti (le voci del menu) - Ho stampato le voci, ma come faccio a stampare il nome del menu?

Grazie,

Jacob

0
Tutte le risposte alla domanda 3
2
30

Nella versione di WordPress 4.9.0 e successive puoi usare

wp_get_nav_menu_name($location)

wp_nav_menu_name per maggiori informazioni

22 dic 2018 09:15:42
Commenti

Esattamente quello che stavo cercando +1 … dovrebbe essere la risposta accettata

GDY GDY
28 nov 2019 15:27:42

Questa risposta dovrebbe essere portata in cima o contrassegnata come la risposta corretta attuale.

William Patton William Patton
22 nov 2022 00:38:24
6
15

Puoi accedere ai metadati del menu utilizzando la funzione wp_get_nav_menu_object

PER NOME:

$menu = wp_get_nav_menu_object("my mainmenu" );

PER SLUG:

$menu = wp_get_nav_menu_object("my-mainmenu" );

L'oggetto restituito è il seguente:

 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
 )

Per visualizzare il nome:

echo $menu->name;
18 feb 2017 21:01:26
Commenti

Stai già fornendo il nome, perché vorresti ottenerlo di nuovo? Ogni volta che cambia il menu con un altro o aggiorna il nome del menu nel back-end, dovrà aggiornare quei valori.

David Lee David Lee
18 feb 2017 21:12:50

@DavidLee Non capisco perché hai scartato la mia risposta, l'idea è la stessa, ho solo fornito il possibile parametro accettato dalla funzione wp_get_nav_menu_object, tutto qui.

Den Isahac Den Isahac
18 feb 2017 21:21:30

Se lo desideri, puoi anche accedere ai metadati del menu fornendo l'ID del menu come segue $menu = wp_get_nav_menu_object ('id');

Den Isahac Den Isahac
18 feb 2017 21:26:07

pensaci, stai dicendo che per ottenere il nome del menu hai bisogno del nome del menu, lo stesso vale per l'ID

David Lee David Lee
18 feb 2017 21:41:16

Ciao David, penso che tu stia facendo un ottimo punto - ma non lo capisco del tutto. Potresti spiegare un po' di più nella tua risposta?

Jacob Henning Jacob Henning
21 feb 2017 02:59:35

puoi indicare quale parte non capisci per favore? il nome del footer cambia quando assegni un altro menu, quindi è meglio ottenere il nome usando la posizione, è come ottieni il nome del menu che si trova nella posizione footer

David Lee David Lee
25 feb 2017 20:43:25
Mostra i restanti 1 commenti
0

Puoi ottenere il nome in questo modo, utilizzando la posizione del menu, quindi se il menu viene aggiornato o ne assegni un altro non dovrai modificare nulla qui:

$locations = get_nav_menu_locations(); //ottieni tutte le posizioni dei menu
$menu = wp_get_nav_menu_object($locations['name_of_the_menu_location']);//ottieni l'oggetto menu

echo $menu->name; // nome del menu

il 'name_of_the_menu_location' è quello che usi per visualizzare un menu con wp_nav_menu

<?php
     wp_nav_menu(array(
          'theme_location' => 'footer'//questo valore
     ));
?>
18 feb 2017 21:04:32