VF DSL 468x60

Nummeriertes Menü

Submitting your vote...
Rating: 5.0 of 5. 6 vote(s).
Click the rating bar to rate this item.

Dieses Beispiel erstellt ein Menü bei dem die einzelnen Punkte fortlaufend nummeriert ausgegeben werden.

Das kann bei Seiten die eine strukturierte Übersicht benötigen nützlich sein.

 

 

lib.menu=HMENU
lib.menu.1=TMENU
# hier expAll evtl auf 1 setzen wenn das Menü immer alle Unterpunkte anzeigen soll
lib.menu.1.expAll=0
lib.menu.1.wrap=<ul>|</ul>
lib.menu.1.NO{
         # füllen der verwendetetn Register
  before.cObject=LOAD_REGISTER
  before.cObject{
    	  # Führende 0 für falls noch weniger als 10 Menüpunkte ausgegeben wurden
    leadingZero.cObject=TEXT
    leadingZero.cObject{
      value=0
      if.value=9
      if.isLessThan.cObject=TEXT
      if.isLessThan.cObject{
        value={register:mainMenuNumber}
        insertData=1
      }
    }
    		# Counter der die Hauptmenüpunkte zählt
    mainMenuNumber.cObject=TEXT
    mainMenuNumber.cObject{
      value={register:mainMenuNumber}+1
      insertData=1
    }
    mainMenuNumber.prioriCalc=intval
    		# initialisieren des Counters für die 2. Ebene
    subMenuNumber<lib.menu.1.NO.before.cObject.mainMenuNumber
    subMenuNumber.cObject.value=0
    		# initialisieren des Counters für die 3. Ebene
    subSubMenuNumber<lib.menu.1.NO.before.cObject.mainMenuNumber
    subSubMenuNumber.cObject.value=0
  }
  	# Die Nummerierung soll innerhalb des Link tags erscheinen
  ATagBeforeWrap=1
  linkWrap={register:leadingZero}{register:mainMenuNumber} |
  	# insertData auf den allStdWrap setzen, da linkWrap keine stdWrap unterstützung hat.
  allStdWrap.insertData=1
  wrapItemAndSub=<li>|</li>
}
lib.menu.2<lib.menu.1
lib.menu.2.NO{
  before.cObject{
    	  # Counter für die 1. Ebene hier nicht mehr inkrementieren
    mainMenuNumber.cObject.value={register:mainMenuNumber}
    		# Führende 0 für die 2. Ebene
    leadingZero2<lib.menu.2.NO.before.cObject.leadingZero
    leadingZero2.cObject.if.isLessThan.cObject.value={register:subMenuNumber}
    		# Counter für die 2. Ebene hier inkrementieren
    subMenuNumber.cObject.value={register:subMenuNumber}+1
  }
  linkWrap={register:leadingZero}{register:mainMenuNumber}.{register:leadingZero2}{register:subMenuNumber} |
}
lib.menu.3<lib.menu.2
lib.menu.3.NO{
  before.cObject{
    	  # Führende 0 für die 3. Ebene
    leadingZero3<lib.menu.2.NO.before.cObject.leadingZero
    leadingZero3.cObject.if.isLessThan.cObject.value={register:subSubMenuNumber}
        # Counter für die 2. Ebene hier nicht mehr inkrementieren
    subMenuNumber.cObject.value={register:subMenuNumber}
    		# Counter für die 3. Ebene hier inkrementieren
    subSubMenuNumber.cObject.value={register:subSubMenuNumber}+1
  }
  linkWrap={register:leadingZero}{register:mainMenuNumber}.{register:leadingZero2}{register:subMenuNumber}.{register:leadingZero3}{register:subSubMenuNumber} |
}

 

Anzeigebeispiel nummeriertes Menü



Comments


marku, 16-10-09 19:51:
Bin noch ein neuling...

Das Menü gefällt mir, nur wie bekomme ich es nun in einen Platzhalter?

besten dank für eure hilfe..
siteway.de, 23-11-09 14:30:
Eine viel einfachere Methode ist folgendes:

NO.wrapItemAndSub = <li>Nummer {register:count_HMENU_MENUOBJ}: |</li>
NO.wrapItemAndSub.insertData = 1
Johannes, 27-11-09 13:52:
@siteway.de: Das klappt leider nur für Menus mit einer Ebene, da die Unterpunkte mitgezählt werden.

Ich benutze immer diese etwas reduzierte Version:

lib.mainmenu = COA
lib.mainmenu {
10 = HMENU
10 {
entryLevel = 0
1 = TMENU
1 {
noBlur = 1
expAll = 1
wrap = <ul>|</ul>
NO = 1
NO {
before.cObject= LOAD_REGISTER
before.cObject {
mainMenuNumber {
cObject=TEXT
cObject{
value={register:mainMenuNumber}+1
insertData=1
}
prioriCalc=intval
}
nr.stdWrap.dataWrap = 000000{register:mainMenuNumber}
nr.substring = -2
}
wrapItemAndSub = <li id="nav-{register:nr}">|</li>
wrapItemAndSub.insertData = 1
}
ACT < .NO
ACT.wrapItemAndSub = <li id="nav-{register:nr}" class="active">|</li>
}
2 < .1
2.NO.before.cObject.mainMenuNumber.cObject.value = {register:mainMenuNumber}
2.ACT.before.cObject.mainMenuNumber.cObject.value = {register:mainMenuNumber}
}
}

Add comment

* - required field

*



*
*

Top 10 Updates

Erstellen eines einfachen Infocenters mit TYPO3  geändert am  17-Nov-2009 11:11:22
Funktionierendes Section Menu mit TemplaVoila geändert am  05-May-2009 10:42:40
"Nicht im Menü" in Sitemap anzeigen geändert am  05-May-2009 10:12:24
Implementation des DHTML Menüs von brainjar.com  geändert am  01-Feb-2009 13:01:36
Beispiel DHTML Menü geändert am  01-Feb-2009 12:47:38
Anzeigebeispiel für dynamische Bild Masken geändert am  16-Dec-2008 15:11:25
Links geändert am  11-Dec-2008 10:12:33
Nützliche Links geändert am  11-Dec-2008 10:05:56
Transparente PNG's in IE5/6 ohne JavaScript geändert am  04-Oct-2008 12:28:14
Typoscript Eigenschaften mit stdWrap erweitern geändert am  13-Jun-2008 14:16:12

Latest comments

13-Mar-2010 10:07:30
Tom schrieb: Sorry, natürlich mit align = center :-) Tom
Vertikales grafisches Menu (GMENU)
11-Mar-2010 07:52:35
Tom schrieb: Klasse, genau das was ich gebraucht habe. Mit einer Einschränkung... ... wie kann ich jetzt den...
Vertikales grafisches Menu (GMENU)
10-Mar-2010 15:42:51
siteway.de schrieb: Perfekt. Nach genau sowas hab ich gesucht! Danke.
Jedem Mailformular Feld eine eigene CSS Klassen zuweißen
English
Suche: