[TYPO3-german] Lösung - Textmenü: CUR mit 2 unterschiedlichen wraps

Ulrich Fischer ulrich-fischer at gmx.net
Wed Jul 25 12:39:00 CEST 2007


Hallo typo3 Text-Menü Freunde,

nach dem prima Vorschlag von joH aus dem Typo3 Kochbuch
habe ich ein nummeriertes Textmenü am Laufen
(TypoScript siehe unten).

Nun soll der aktive Menüpunkt nicht verlinkt
aber von einem span umgeben sein. Damit kann
das Element im CSS analog formatiert werden.

Wie ich die Frage posten will, wie ich den
Linktext zweimal aber unterschiedlich wrappen kann,
komme ich auch schon auf die Lösung.

Zusatzfrage: Muss der Punkt, der jedes Link-Listenelement
abschließen soll, bei geschachtelten Listen nach dem
Link-Text stehen oder vor dem schließenden </li>-Tag,
nach dem Submenü?

Ulrich
-- 
http://www.sunfish.de


*** L Ö S U N G  *************************************

--- Relevanter TypoScript Ausschnitt -----------------
CUR {
   doNotLinkIt = 1
   stdWrap.wrap = <span class="curent>|</span>
   wrapItemAndSub = <li>|</li>
}


--- So sieht das HTML aus ----------------------------
<ul>
  <li><span="current">Link Text 1</span>
    <ul>
      <li><a href="beispiel_1.html>Beispiel 1</a><li>
      <li><a href="beispiel_2.html>Beispiel 2</a><li>
    </ul>
  </li>
  <li><a href="link_2.html>Link Text 2</a><li>
</ul>



# --- Das Menü typoScript -----------------------------

# temp.submenu
# Auf allen Seiten zu sehen, aber nur EIN Zweig des Seitenbaums
# ** special und entryLevel kombiniert ** siehe unten

temp.submenu = COA
temp.submenu {
    10 = HMENU
    10 {
       special = directory
       special.value = 29
       #entryLevel = 1
       1 = TMENU
       1 {
          noBlur = 1
          wrap = <ul>|</ul>
          NO = 1
          NO {
             wrapItemAndSub = <li>|<span class="hidden">.</span></li>

             stdWrap.prepend = COA
             stdWrap.prepend {
                10 = LOAD_REGISTER
                10 {
                      # L2N: Level2Number
                      tempN.data = register:L2N
                      tempN.wrap = |+1
                      L2N.data = register:tempN
                      L2N.prioriCalc = 1
                      L3N = 0
                   }
                 20 = COA
                 20 {
                      wrap = <dfn>3.|</dfn>
                      10 = TEXT
                      10.data = register:L2N
                      10.wrap = |
                      100 = Text
                      100.value = &nbsp;
                    }
             }
          }
          ACT < .NO
          ACT = 1
          ACT {
             wrapItemAndSub = <li class="parent">|<span 
class="hidden">.</span></li>
          }
          CUR < .NO
          CUR = 1
          CUR {
             doNotLinkIt = 1
             stdWrap.wrap = <span class="current>|</span>
             wrapItemAndSub = <li><span class="hidden">.</span></li>
          }
       }

       2 < .1
       2 {
          NO.stdWrap.prepend {
             10 {
                # L3N: Level1Number
                tempN.data = register:L3N
                L2N >
                L3N.data = register:tempN
                L3N.prioriCalc = 1
             }
             20 {
                10.wrap = |.
                20 = TEXT
                20.data = register:L3N
                20.wrap = |
             }
          }
          ACT < .NO
          ACT = 1
          ACT {
             wrapItemAndSub = <li class="parent">|<span 
class="hidden">.</span></li>
          }
          CUR < .NO
          CUR = 1
          CUR {
             doNotLinkIt = 1
             stdWrap.wrap = <span class="current>|</span>
             wrapItemAndSub = <li><span class="hidden">.</span></li>
          }
       }
    }
}

# Im aktiven Seitenbaum entryLevel
[PIDinRootline = 29]
     temp.submenu.10.special >
     temp.submenu.10.entryLevel = 1

# Auf der Starseite gar kein Menü
[globalVar = TSFE:id = 47]
      temp.submenu >
      temp.submenu = TEXT
      temp.submenu.value =
[END]


More information about the TYPO3-german mailing list