Problem mit Navigation bei mehreren Unterseiten

  • Moin, habe ein kleines Problem, bei dem ich gerade nicht weiterkomme.
    Folgendes: ich nutze WP als CMS und habe Unterseiten mit 3. Ebenen.

    Siehe hier: http://www.maggies-galerie.de/wp

    Funktioniert auch alles soweit, aber:

    Wenn man z.B. Kunst>Malerei anklickt öffnet, sich ein weiteres Untermenü. OK. Wenn ich nun aber auf einen der zwei Punkte klicke, verschwindet der Rest der Navigation. Die soll aber so bleiben wie sie ist und nicht den Rest der Links verschwinden lassen.

    Der Code dazu:

    [FONT=Courier New]if( $post->post_parent && wp_list_pages("child_of=".$post->ID."&echo=") ) { /* Seite ist Kind-Seite UND hat Kinder (2. Ebene) */
    wp_list_pages('sort_column=menu_order&title_li=&child_of='.$post->post_parent); /* Alle Unterseiten der Elternseite ausgeben */
    }

    elseif( wp_list_pages("child_of=".$post->ID."&echo=") ) { /* Seite hat Kinder (1. Ebene) */
    wp_list_pages('sort_column=menu_order&title_li=&child_of='.$post->ID); /* Alle Unterseiten der aktuellen Seite ausgeben */
    }

    elseif( $post->post_parent && !wp_list_pages("child_of=".$post->ID."&echo=") ) { /* Seite ist Kind-Seite UND hat KEINE Kinder (3. Ebene) */
    wp_list_pages('sort_column=menu_order&title_li=&child_of='.$post->post_parent); /* --- Hier ist wohl das Problem ???? --- */
    }[/FONT]

    Ich hoffe ich hab das jetzt nicht zu kompliziert gemacht und ihr könnt mir helfen ;)

    Und sorry für die Geschwindigkeit der Seite, ist halt Strato :evil:

    • 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

  • Ok hab das Problem gelöst... und zwar mit get_post_ancestors:

    Code
    ...
    elseif( $post->post_parent && !wp_list_pages("child_of=".$post->ID."&echo=") ) { /* Seite ist Kind-Seite UND hat KEINE Kinder (3. Ebene) */
    $vorfahren = get_post_ancestors($post); /* Alle "Vorfahren" ins Array laden */
    $last = end($vorfahren); /* letztes Element im Array speichern */
    wp_list_pages('sort_column=menu_order&title_li=&child_of='.$last);
    }

Jetzt mitmachen!

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