Nav Items auf active setzen je nach Seite

  • Hallo,

    ich habe auf einer Seite ein Hauptmenü oben und ein widget-Menü in der linken sidebar. Das Menü soll erstens nur erscheinen, wenn die entsprechende Seite aufgerufen ist. Zweitens soll sich dann auch immer das entsprechende item im Menü und auch im Untermenü automatisch auf aktiv setzten (also mit entsprechendem css-Stil).

    Gibt es dafür ein Plugin?
    Ich könnte es evtl. auch duch php lösen. Aber wie greife ich auf die Menüs und Items zu?

    Danke schonmal!

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Subpages in Context is puffig, aber wohl nix für Deine Zwecke.

    Du könntest eine weitere Sidebar registrieren und diese dann nur auf der betreffenden Seite einbinden. Wie das geht, steht im Codex von Wordpress. ;)

  • Ich hab jetzt was gefunden. In meinem Fall wird der code etwas unschön, da ich ja zwei Menüs gleichzeitig aktiv setzen will, also den Seitentitel manuell mit den Items vergleichen muss, aber mei...

    add_filter( 'wp_get_nav_menu_items', 'cpt_archive_menu_filter', 10, 3 );
    function cpt_archive_menu_filter( $items, $menu, $args ) {
    // hier get_the_title() mit $item->title vergleichen und entsprechend den style setzen mit $item->classes []='my_active_style';
    return $items;
    }

  • AW: Nav Items auf active setzen je nach Seite

    Meiner Meinung nach machst du das viel zu kompliziert. Meine Lösung:
    Main Menü via wp_nav_menu einbinden und die erste Ebene im Dashboard manuell anlegen. Die Unterseiten einfach im Dashboard als Childs der entsprechenden Parent-Seiten definieren und via wp_list_pages in der Sidebar ausgeben lassen.
    In diesem Fall vergibt WP schon entsprechende Klassen für die aktiven (parent)Seiten (current_menu_item, current_page_item, current_page_parent etc.). Mithilfe dieser Klassen kannst du nun die aktiven (parent)Seiten nach belieben stylen.

    Oder habe ich da was falsch verstanden?
    LG, pixselig

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!