Menue mit Unterpunkten und wp_list_pages

  • Hallo WordPressGemeinde,

    ich moechte Wordpress als CMS fuer eine Seite einsetzen. Diese Seite hat Menuepunkte und manche von diesen haben auch Unterpunkte. Nun haette ich gern folgende Funktionalitaet bei der Menueausgabe:

    - Am Anfang sind nur die Hauptmenuepunkte sichtbar
    - beim Klick wird die Seite geladen und direkt unter dem geoeffneten Menuepunkt werden die Unterpunkte geladen. Das ganze theoretisch bis ins endlose, also rekursiv.

    Ich denke aber 2-3 Ebenen wird die maximale Verschachtelung der Seiten betragen. Ich habe im Netz schon allerlei tutorials gefunden je nach abhaengigkeit der Seite die unterpunkte dazuzuladen (per child_of) oder nur die Hauptebene anzuzeigen, (per depth)
    allerdings ist das nicht genau das was ich suche.

    Die Unterpunkte sollen ja mit in die Liste vom Menue aufgenommen werden, dort irgendwie eine andere Klasse bekommen damit ich sie separat designen kann und das wars auch schon. Geht das irgendwie?
    Kann man wp_list_pages notfalls auch modifizieren? Oder gibt es gar ein Plugin dafuer.

    Fuer Tipps und Ratschlaege waer ich sehr dankbar.
    mfg
    m0mo

    • 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


  • - Am Anfang sind nur die Hauptmenuepunkte sichtbar
    - beim Klick wird die Seite geladen und direkt unter dem geoeffneten Menuepunkt werden die Unterpunkte geladen. Das ganze theoretisch bis ins endlose, also rekursiv.
    [...]
    Oder gibt es gar ein Plugin dafuer.


    Na aber sicher doch: :-)

    :arrow: Collapsable, Foldable, Expandable Page Menus for Wordpress: The Fold Page List Plugin

  • so...

    jetzt muss ich doch noch einmal nachfragen. Ich habe das Plugin installiert und es macht genau das was ich will, verschachtelt untermenues in neuen Listen und ich bekomme eine neue classe zum nachstylen hinzu, ausgezeichnet. Dennoch gibt es jetzt ein kleines Problem:

    Mein Menue soll im groben so aussehen wie in dem Bild unten. Die Hauptebenenmenuepunkte sehen also anders aus als die darunter usw.
    Des weiteren haben die Menuepunkte, oder besser die <li></li> Elemente einen 1px grossen Border unten. Laedt nun das Plugin die Unterseiten nach, vergroessert sich ja das <li> Element der VaterSeite - wie das aussieht seht ihr in zweiten Bild. Wenn ich die Verschachtelung der Unterbereiche mit <ul> entferne, geht es natuerlich, aber dann fehlt mir die Moeglichkeit die Menuepunkte nach Tiefe separat zu stylen.

    Sehe ich eine einfache Moeglichkeit gerade nicht? Eventuell die <a> Elemente auf display:block; stellen und dann so gross werden lassen wie die Menuepunkte an sich? Valide waere es, aber gibts noch was schoeneres?

    Vielen dank schonmal fuer eure Hilfe!

    mfg
    m0mo

  • Wenn ich die Verschachtelung der Unterbereiche mit <ul> entferne, geht es natuerlich, aber dann fehlt mir die Moeglichkeit die Menuepunkte nach Tiefe separat zu stylen.

    Code
    li { // 1. Ebene
    ...
    }
    li li { // 2. Ebene
    ...
    }
    li li li { // 3. Ebene
    ...
    }
    Zitat

    die <a> Elemente auf display:block; stellen und dann so gross werden lassen wie die Menuepunkte an sich? Valide waere es, aber gibts noch was schoeneres?


    Auch ne Variante. Warum ist das unschön?

  • Code
    li { // 1. Ebene
    ...
    }
    li li { // 2. Ebene
    ...
    }
    li li li { // 3. Ebene
    ...
    }

    guten morgen marX,

    klar, dass das so geht weiss ich, aber damit aendert sich ja nicht mein angesprochenes Problem, dass das eine <li> Element, dass das untermenue <ul> enthaelt dann groesser wird und somit keine weisse Linie unter dem Punkt angezeit wird. Ich koennte hoechstens dem untermenue border-top: geben, dem darunter dann wieder border-bottom: und jeweils per last/first-child gar keine formatierung um den gewuenschten effekt zu erzielen, aber erstens finde ich das ziemlich unschoen (semantisch sozusagen) und zweitens funktionieren manche formtatierungen nicht beim IE6, den man leider ja noch mit einbeziehen muss in seinen Planungen.


    Auch ne Variante. Warum ist das unschön?


    hm, naja, ein a Element kuenstlich auf Block zu setzen damit es eine Designeigenschaft annehmen kann, die eigentlich dem uebergeordneten <li> Element zugeordnet werden sollte, finde ich nicht so schoen. :)

    aber nagut, wenn es keinen anderen weg gibt, dann werde ich mal weiter ausprobieren.

    mfg
    m0mo

  • hm, naja, ein a Element kuenstlich auf Block zu setzen damit es eine Designeigenschaft annehmen kann, die eigentlich dem uebergeordneten <li> Element zugeordnet werden sollte, finde ich nicht so schoen. :)


    Wieso? Genau dafür ist CSS doch da, semantische HTML-Elemente mit einem eigenen Design zu versehen. Und der Weg den du da vorschlägst ist der, der im Normalfall gegangen wird, eben wegen der von dir angesprochenen Browserprobleme.

    Oder du macht beides - "semantisches" CSS für die Browser, "unschönes" für die IEs in einem eigenen Stylesheet. ;-)

  • Wieso? Genau dafür ist CSS doch da, semantische HTML-Elemente mit einem eigenen Design zu versehen. Und der Weg den du da vorschlägst ist der, der im Normalfall gegangen wird, eben wegen der von dir angesprochenen Browserprobleme.

    Oder du macht beides - "semantisches" CSS für die Browser, "unschönes" für die IEs in einem eigenen Stylesheet. ;-)

    da hast du vollkommen recht - CSS ist zum designen von semantischen HTML Elementen da. Lediglich die Tatsache, ein Element und sein Verhalten zu "missbrauchen", um ein Design fuer ein anderes Element zu simulieren, finde ich etwas, naja, irgendwie unsauber. Scheint sich aber nicht aendern zu lassen. Es waere ein riesen Vorteil, wenn man in diesem Plugin noch das Styleverhalten einstellen koennte. Da es aber auf wp_list_pages aufbaut, wird das wohl nichts.

    Danke schonmal fuer die morgentliche Hilfe :)
    mfg
    m0mo

Jetzt mitmachen!

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