Prüfen, ob ein WordPress-Navigationsbereich (wp_nav_menu) ein Menü enthält

In WordPress können über die Funktion wp_nav_menu
Navigationsbereiche registriert und im Template platziert werden. Im Administrationsbereich hat der Administrator anschließend die Möglichkeit die Navigationsbereiche mit Menüs zu bestücken.
Je nach Theme sollte geprüft werden, ob ein Bereich auch eine Navigation enthält. Beispielsweise weil die Navigation auf dem Smartphone hinter einem Button versteckt wird und dieser Button natürlich keinen Sinn macht, wenn gar keine Links vorhanden sind.
Workshops & Schulungen von kulturbanause
Intensive Trainings mit hohem Praxisbezug.
WordPress-Navigationsbereich registrieren
Zunächst muss der Navigationsbereich über die functions.php
registriert werden. Der Code dazu sieht z. B. wie folgt aus. Hier wird ein Bereich mit dem Bezeichner nav-header
registriert. Im Backend wird der Name Header
angezeigt.
function kb_register_menus() {
register_nav_menus(
array(
'nav-header' => __( 'Header' ),
)
);
}
add_action( 'init', 'kb_register_menus' );

Prüfen, ob dem Bereich ein Menü zugewiesen wurde – has_nav_menu
Um zu prüfen ob der Navigationsbereich ein Menü enthält, nutzen wir die Funktion has_nav_menu
. Der Aufbau ist simpel – wenn dem Bereich nav-header
ein Menü zugewiesen wurde, wird ein entsprechender Text angezeigt.
<?php
if (has_nav_menu('nav-header')) {
echo 'Menü wurde zugewiesen'; }
?>
In der Praxis wird folgender Aufbau wohl noch etwas häufiger zur Anwendung kommen. Hier wird zusätzlich das Menü selbst angezeigt.
<?php
$theme_location = 'nav-header'; // Bezeichner des Menübereichs
if (has_nav_menu($theme_location)) { // Prüfen ob ein Menü zugewiesen wurde
// Menü ausgeben
wp_nav_menu( array(
'theme_location' => $theme_location,
'container' => ''
));
echo 'Menü wurde zugewiesen'; // Beliebigen weiteren Inhalt ausgeben
}
?>
Links / Quellen
- Generate WP Nav Menu
- Online-Generator zum Erzeugen von WordPress-Funktionen, u.a. von Menüs
- Function Reference/wp nav menu
- Detaillierte Beschreibung der
wp_nav_menu
-Funktion im WordPress-Codex
Jetzt bist du gefragt!
Hast du Anregungen, Ergänzungen, einen Fehler gefunden oder ist dieser Beitrag nicht mehr aktuell? Dann freuen wir uns auf deinen Kommentar.
Du kannst diesen Beitrag natürlich auch weiterempfehlen. Wir sind dir für jede Unterstützung dankbar!
Unterstützung bei WordPress-Projekten
Unsere WordPress Agentur ist auf die Entwicklung maßgeschneiderter WordPress-Themes und -Websites spezialisiert. Wenn du Unterstützung bei der Planung, Gestaltung und Entwicklung eines Projekts benötigst, helfen wir gerne weiter.
WordPress-Leistungsangebot →