[Frage] HMENU / TMENU - 3. Menü-Ebene wird nur auf der aktuellen Seite angezeigt TYPO3-Version: 9.5.13

  • FrannyFine FrannyFin...
    Typ im Roten Hemd
    0 x
    2 Beiträge
    0 Hilfreiche Beiträge
    24. 11. 2020, 15:13

    Hallo liebe T3-Experten,

    ich habe ein Problem, welches ich als Typo3-Anfängerin nicht gelöst bekomme. Ich habe mir schon von Mittwald die deutsche Typo3-Dokumentation komplett durchgelesen sowie über Google und hier im Forum viele Beiträge gelesen, aber keine Hinweise gefunden, was die Ursache für den Fehler sein kann. Daher hoffe ich, dass mir jemand von Euch helfen kann.

    Folgenden Fehler habe ich. Ich habe ein TMENU mit 3 Menü-Ebenen. Die erste und die zweite Ebene werden im Frontend im Menü korrekt ausgegeben. Die dritte Menü-Ebene wird mir nur von den Seiten angezeigt, wo ich mich aktuell auf der Elternseite in der 2. Ebene befinde. Mal als Beispiel:
    Auf Menü-Ebene 1 befindet sich die Seite "Produkte". Diese Seite hat zwei Unterseiten: "Produkt A" und "Produkt B". Beide Unterseiten haben auf der 3. Menü-Ebene jeweils noch zwei Unterseiten: "Produkt A.1", "Produkt A.2" und "Produkt B.1" und "Produkt B.2".
    Wenn ich mich im Frontend auf der Seite "Produkt A" befinde, werden mir im Menü die Unterseiten zu "Produkt A" angezeigt, jedoch nicht die Unterseiten zu Produkt B! Wenn ich dann auf die Seite "Produkt B" gehe, werden mir im Menü die Unterseiten zu Produkt B angezeigt, jedoch nicht mehr die Unterseiten auf der 3. Ebene von Produkt A. Ich hoffe, ich konnte es halbwegs verständlich beschreiben. Es werden mir also immer nur die Seiten der 3. Ebene im Frontend angezeigt, wenn ich mich gerade auf der entsprechenden Seite befinde.

    Hier der Code für das Menü:

    [code]

    temp.navigation = HMENU
    temp.navigation {

    1 = TMENU

    1 {
    expAll = 1
    wrap = <ul>|</ul>

    NO = 1
    NO.wrapItemAndSub = <li>|</li>

    CUR = 1
    CUR.wrapItemAndSub = <li class="active">|</li>

    ACT < .CUR

    IFSUB = 1
    IFSUB.wrapItemAndSub= <li class="nav-has-sub">|</li>

    ACTIFSUB = 1
    ACTIFSUB.wrapItemAndSub= <li class="nav-has-sub active">|</li>
    }

    2 = TMENU
    2 {
    wrap = <ul class="nav-dropdown">|</ul>

    NO = 1
    NO.wrapItemAndSub = <li>|</li>

    CUR = 1
    CUR.wrapItemAndSub = <li class="active">|</li>

    ACT < .CUR

    IFSUB = 1
    IFSUB.wrapItemAndSub= <li class="nav-has-sub">|</li>

    ACTIFSUB = 1
    ACTIFSUB.wrapItemAndSub= <li class="nav-has-sub active">|</li>
    }

    3 = TMENU
    3 {
    wrap = <ul class="nav-sub-dropdown">|</ul>

    NO = 1
    NO.wrapItemAndSub = <li>|</li>
    }
    }

    [/code]

    Ich würde mich sehr freuen, wenn mir jemand helfen kann. Danke schon mal im Voraus und liebe Grüße
    Franziska

    Tags: Tmenu
  • Hilfreichster Beitrag

  • 1 x
    3253 Beiträge
    152 Hilfreiche Beiträge
    24. 11. 2020, 15:27 - Hilfreichster Beitrag

    Hallo Franziska.

    Achte mal auf die Einstellung "expAll". Diese bewirkt:
    "If this is true, the menu will always show the menu on the level underneath the menu item."

    D.h. wenn Du in Ebene 1 expAll=1 setzt, wird die zweite Ebene vollständig ausgeklappt dargestellt. Das funktioniert bei Dir.
    In Deiner Ebene 2 ist aber *kein* expAll gesetzt. Somit wird die Ebene 3 *nicht* vollständig dargestellt, sondern nur Menüteile der aktiven Rootline (Standardverhalten der Menüs).

    https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/MenuObjects/Tmenu/Index.html?highlight=expall

    Viele Grüße
    Julian


  • 1
  • 1 x
    3253 Beiträge
    152 Hilfreiche Beiträge
    24. 11. 2020, 15:27

    Hallo Franziska.

    Achte mal auf die Einstellung "expAll". Diese bewirkt:
    "If this is true, the menu will always show the menu on the level underneath the menu item."

    D.h. wenn Du in Ebene 1 expAll=1 setzt, wird die zweite Ebene vollständig ausgeklappt dargestellt. Das funktioniert bei Dir.
    In Deiner Ebene 2 ist aber *kein* expAll gesetzt. Somit wird die Ebene 3 *nicht* vollständig dargestellt, sondern nur Menüteile der aktiven Rootline (Standardverhalten der Menüs).

    https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/MenuObjects/Tmenu/Index.html?highlight=expall

    Viele Grüße
    Julian

  • FrannyFine FrannyFin...
    Typ im Roten Hemd
    0 x
    2 Beiträge
    0 Hilfreiche Beiträge
    25. 11. 2020, 10:57

    Hallo lieber Julian, vielen, vielen Dank, dass Du Dir die Zeit genommen hast, Dir mein Problem anzuschauen und mir zu helfen!!! Genau das war die Lösung! Jetzt klappt es! Ich hätte die Lösung bzw. das Problem nicht bei dem expAll vermutet. Ich habe mich - nach dem Lesen Deines Hinweises - erst gefragt, wofür man eine derartige Eigenschaft überhaupt benötigt - aber sie ermöglicht vermutlich z.B. die Darstellung von Breadcrumbs, so dass dann nur der aktuelle Pfad angezeigt wird. Das sind aber alles Themen, in die ich mich noch genauer einarbeiten muss.

    Nochmal herzlichen Dank für Deine Hilfe!!! Liebe Grüße und alles Gute für Dich!
    Franny

  • 0 x
    3253 Beiträge
    152 Hilfreiche Beiträge
    25. 11. 2020, 12:09

    Diese Option bzw. Anwendungsfälle erklärt sich einfach:

    Die "klassische" Navigation links am Rand der Seite:
    - Herrenbekleidung
    - Damenbekleidung

    Bzw., wenn eine Rubik gewählt ist:
    - Herrenbekleidung
    -- Hemden
    -- Hosen
    - Damenbekleidung

    Möchte man hingegen die Navigation ausklappbar (z.B. oben an der Seite) haben, so braucht man (im HTML-Code) alle Menüpunkte aller Rubriken/Hauptseiten dargestellt, und blendet inaktive tele per Javascript aus.

    - Herrenbekleidung
    -- Hemden
    -- Hosen
    - Damenbekleidung
    -- Schuhe
    -- Hosen

    Für Websites mit wenigen Seiten wäre es nichts chlimm, immer die gesamte Baumstruktur ins Menü zu laden. Aber stelle Dir das ganze mal vor in einer Website einer Uni oder eines Krankenhauses, wo auch schnell tausende Seiten existieren...

    Breadcrumbs sind nochmal ein ganz anderer (Spezial-)Fall ;)
    https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/ContentObjects/Hmenu/Index.html?highlight=expall#hmenu-special-property

  • 1