WordPress Anleitung: wp_get_nav_menus — so kannst du alle WordPress Menüs mit PHP abfragen
Marc Wagner
April 17, 2023
WordPress verfügt über eine integrierte Funktion namens wp_get_nav_menus()
, mit der du alle WordPress Menüs mit PHP abfragen kannst. Die Funktion gibt dir ein Array aller registrierten Menüs zurück. Wir können diese Funktion in unserem PHP-Code verwenden, um alle Menüs abzurufen und sie dann weiterzuverarbeiten.
Code Beispiel #
Um alle Menüs in WordPress mit PHP abzurufen, können wir den folgenden Code verwenden:
$menus = wp_get_nav_menus(); foreach ( $menus as $menu /** @var WP_Term $menu */ ) { echo '<h2>' . $menu->name . '</h2>'; $menu_items = wp_get_nav_menu_items( $menu->term_id ); if ( ! empty( $menu_items ) ) { echo '<ul>'; foreach ( $menu_items as $menu_item ) { echo '<li><a href="' . $menu_item->url . '">' . $menu_item->title . '</a></li>'; } echo '</ul>'; } }
Dieser Code ruft alle Menüs auf und listet die verknüpften Menüelemente auf. Der Code verwendet eine foreach
-Schleife, um durch jedes Menü im wp_get_nav_menus()
Array zu iterieren. Innerhalb dieser Schleife wird dann für jedes Menü eine Überschrift (<h2>
) ausgegeben und alle verknüpften Menüelemente werden aufgelistet.
Die wp_get_nav_menu_items()
Funktion wird verwendet, um die Menüelemente für jedes Menü abzurufen. Diese Funktion erfordert das term_id
-Attribut des Menüs als Parameter, um die Menüelemente abzurufen. Der Code verwendet dann eine weitere foreach
-Schleife, um durch alle Menüelemente zu iterieren und sie aufzulisten.
Fazit #
Dank der integrierten Funktionen wp_get_nav_menus() und wp_get_nav_menu_items() in WordPress ist es sehr einfach, alle Menüs in WordPress mit PHP abzurufen. Mit den beiden Funktionen können wir schnell und einfach eine Liste aller Menüs auf der Website erstellen. Dies ermöglicht es euch, eure Menüs individuell anzupassen und für eure Besucher zu optimieren.
Artikel von:
Marc Wagner
Hallo, Marc hier. Ich bin der Gründer von Forge12 Interactive und bereits seit über 20 Jahren leidenschaftlich dabei Webseiten, Onlineshops, Anwendungen und SaaS-Lösungen für Unternehmen zu entwickeln. Vor der Gründung habe ich bereits in Börsen notierten Unternehmen gearbeitet und mir allerlei Wissen angeeignet. Dieses Wissen möchte ich nun an meine Kunden weitergeben.