WordPress: individuelles Menü mit Ausweichlösung

Keine Raketenwissenschaft und auch nicht einmal ein Hexenwerk, aber vielleicht hilft es jemandem weiter. Gewünscht war vom Kunden ein “individuelles” Hauptmenü. Individuell ist hiermit gemeint, dass die Punkte nicht einheitlich waren, sondern sich aus Seiten, Kategorieübersichten etc. zusammensetzten.

Für so etwas eignet sich natürlich die Menü-Funktion von WordPress wo man sich die einzelnen Punkte der Navigation zusammen-klicken lassen kann. Gefunden habe ich den Code bei Nicolas Kuttler, welchen ich leicht abgeändert und am Ende der functions.php eingefügt habe:

add_action( 'init', 'mytheme_addmenus' );

function mytheme_nav() {
    if ( function_exists( 'wp_nav_menu' ) )
        wp_nav_menu( 'menu=main_nav&container_class=pagemenu&fallback_cb=mytheme_nav_fallback' );
    else
        mytheme_nav_fallback();
}

function mytheme_nav_fallback() { ?>
    <ul>
        ... individuelles, manuell erstelltes Menü
    </ul>
<?php } ?>

Als Ausweichlösung, wenn ein Menü noch nicht im Backend erstellt oder aktiviert wurde, werden bei Nicolas die Seiten (wp_page_menu();) eingeblendet. Ich habe mich dafür entschieden dort ein “individuelles”, manuell erstelltes Menü zu erstellen, von den Punkten, wo ich wusste, dass die in die Hauptnavigation kommen sollen.

Das Menü bindet man dann an der gewünschten Stelle ein, z. B. header.php, mit folgendem Code: <?php mytheme_nav(); ?>.

Wir arbeiten seit 20 Jahren mit WordPress und bieten diverse Dienst­leistungen rund um das System an. Kontaktiere uns für weitere Informationen oder für ein Angebot.

Verwandte Beiträge:

Ein Kommentar

Kommentare sind geschlossen.