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.

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' );
WordPress-Backend mit den zwei Navigationsbereichen Header und Footer
WordPress-Backend mit den zwei Navigationsbereichen Header und Footer

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
	}
?>

Geschrieben von Jonas

Benutzerbild

Jonas ist Gründer der Agentur kulturbanause und des kulturbanause Blogs. Er arbeitet an der Schnittstelle zwischen UX/UI Design, Frontend und Redaktion und hat zahlreiche Fachbücher und Video-Trainings veröffentlicht. Jonas Hellwig ist regelmäßig als Sprecher auf Fachveranstaltungen anzutreffen und unterstützt mit Seminaren und Workshops Agenturen und Unternehmen bei der Planung, der Gestaltung und der technischen Umsetzung von Web-Projekten.

Jonas Hellwig bei Xing

Feedback & Ergänzungen – Schreibe einen Kommentar

Kommentar zu dieser Seite

Wir freuen uns über Anregungen, Ergänzungen oder Hinweise zu Fehlern. Wir lesen jeden Eintrag, veröffentlichen aber nur, was den Inhalt sinnvoll ergänzt.

WordPress-Projekte mit kulturbanause

Wir wissen wovon wir reden. Wir setzen WordPress seit über 10 Jahren erfolgreich ein und realisieren maßgeschneiderte Websites auf Basis dieses großartigen CMS.

WordPress-Leistungsangebot →

Schulungen von kulturbanause

Wir bieten Seminare und Workshops zu den Themen Konzept, Design und Development. Immer up-to-date, praxisnah, kurzweilig und mit dem notwendigen Blick über den Tellerrand.

Übersicht Schulungsthemen →