TMENU der zweiten Ebene richtig wrappen [Gelöst]

  • m99 m99
    T3PO
    0 x
    11 Beiträge
    0 Hilfreiche Beiträge
    27. 01. 2010, 17:33

    Hallo Leute,

    ich habe ein Menü, dessen erster Hauptmenüpunkt keine Unterpunkte erhält. Ansonsten besteht es aus vier Hauptmenüpunkten. Nun möchte ich im Footer eine Art Sitemap der ersten und zweiten Ebene realisieren, bei der die zweite Ebene jeweils unter der horizontal angeordneten ersten erscheint. Mein Problem ist, daß durch die fehlende zweite Ebene im ersten Hauptmenüpunkt die zweite Ebene falsch gewrappt wird.

    Mein Typoscript:
    [TS]20.2 = TMENU
    20.2.wrap = <div class="footerBox first"><ul>|</ul></div> |*||*| <div class="footerBox last"><ul>|</ul></div>
    20.2.NO {
    allWrap = <li>|</li>
    }
    [/TS]

    Das Ergebnis:
    [HTML]<div class="footerBox first"><ul><li>...</li></ul></div>
    <div class="footerBox first"><ul><li>...</li></ul></div>
    <div class="footerBox first"><ul><li>...</li></ul></div>
    [/HTML]

    Es fehlt also das Wrapping für den ersten Menüpünkt. Und alle Boxen bekommen die erste Regel des optionSplit verpaßt.

    Weiß einer Rat?


  • 1
  • SLAng SLAng
    Flash Gordon
    0 x
    2757 Beiträge
    0 Hilfreiche Beiträge
    28. 01. 2010, 08:33

    Ich kann zwar bicht ganz folgen, aber sicher ist schonmal das Unsortierte Listen mit wrapItemAndSub gewrappt werden. Beispiele gibt genügend.
    Ansonsten wird der Fehller in deinem optionSplit liegen

  • m99 m99
    T3PO
    0 x
    11 Beiträge
    0 Hilfreiche Beiträge
    28. 01. 2010, 09:41

    Vielleicht noch einmal zur Verdeutlichung.

    Struktur des Seitenbaumes:

    1. * Hauptmenüpunkt 1
    2. * Hauptmenüpunkt 2
    3. - Untermenüpunkt 2.1
    4. - Untermenüpunkt 2.2
    5. * Hauptmenüpunkt 3
    6. - Untermenüpunkt 3.1
    7. - Untermenüpunkt 3.2
    8. * Hauptmenüpunkt 4
    9. - Untermenüpunkt 4.1
    10. - Untermenüpunkt 4.2

    HMP 1 hat also keine UMP. Dennoch soll im Footer eine Sitemap folgender Struktur entstehen:

    1. HMP1 HMP2 HMP3 HMP4
    2. UMP2.1 UMP3.1 UMP4.1
    3. UMP2.2 UMP3.2 UMP4.2

    Die HMP werden schon korrekt gerendert. Mein Problem sind wirklich die UMP. Dafür existiert bisher folgendes Typoscript:
    [TS]20.2 = TMENU
    20.2.wrap = <div class="footerBox first"><ul>|</ul></div> |*| <div class="footerBox middle"><ul>|</ul></div> |*| <div class="footerBox last"><ul>|</ul></div>
    20.2.NO {
    allWrap = <li>|</li>
    }
    [/TS]

    Das Resultat im Quelltext ist aber:
    [HTML]<div class="footerBox first"><ul><li>UMP2.1</li><li>UMP2.2</li></ul></div>
    <div class="footerBox first"><ul><li>UMP3.1</li><li>UMP3.2</li></ul></div>
    <div class="footerBox first"><ul><li>UMP4.1</li><li>UMP4.2</li></ul></div>
    [/HTML]

    Das bedeutet es existieren zwei Probleme: 1. Fehler im optionSplit, da ja immer die Klasse first ausgegeben wird und 2. ein leeres <div class="footerBox first"><ul></ul></div> für den ersten HMP fehlt. Das brauche ich aber, weil sonst (wie es momentan der Fall ist) die UMP einen Block nach links rutschen und so optisch falsch den HMP zugeordnet sind.

    Ich hoffe, das erklärt mein Problem genauer.

    Marco

  • m99 m99
    T3PO
    0 x
    11 Beiträge
    0 Hilfreiche Beiträge
    28. 01. 2010, 14:50

    Das ist die Lösung (Danke an algiz aus dem IRC-Channel Typo3 auf irc.german-freakz.net):
    [TS]20 {
    1 = TMENU
    1 {
    expAll = 1
    NO = 1
    NO.wrapItemAndSub = <div class="footerBox">|</div> |*||*| <div class="footerBox last">|</div>
    NO.doNotShowLink = 1
    }
    2 = TMENU
    2 {
    expAll = 1
    wrap = <ul>|<ul>
    NO = 1
    NO.linkWrap = <li>|</li>
    }
    }
    [/TS]

  • 1