Nummeriertes Menü

Submitting your vote...
Rating: 4.9 of 5. 7 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 21: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 15:30:
Eine viel einfachere Methode ist folgendes:

NO.wrapItemAndSub = <li>Nummer {register:count_HMENU_MENUOBJ}: |</li>
NO.wrapItemAndSub.insertData = 1
Johannes, 27-11-09 14: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}
}
}
Felix, 29-06-10 09:29:
Danke, Johannes.

Genau das hab ich gesucht. :)
You made my day!

LG Felix

Add comment

* - required field

*



*
*

Top 10 Updates

Login geändert am  14-Aug-2010 13:50:17
Schöne Schriften mit Google Font API geändert am  20-May-2010 16:36:59
TS basierte Searchbox für Indexed Search geändert am  18-May-2010 18:26:54
TYPO3 SEO geändert am  30-Apr-2010 09:43:20
Suchmaschinenfreundliche grafische Überschriften in TYPO3 geändert am  30-Apr-2010 09:33:56
Erstellen eines einfachen Infocenters mit TYPO3  geändert am  17-Nov-2009 12:11:22
Funktionierendes Section Menu mit TemplaVoila geändert am  05-May-2009 12:42:40
"Nicht im Menü" in Sitemap anzeigen geändert am  05-May-2009 12:12:24
Implementation des DHTML Menüs von brainjar.com  geändert am  01-Feb-2009 14:01:36
Beispiel DHTML Menü geändert am  01-Feb-2009 13:47:38

Latest comments

01-Sep-2010 20:38:32
Ben Heuwing schrieb: Damit die aktuelle Seite nicht verlinkt wird, wie bei normalen Menüs den MENUITEMSTATE CUR...
Klickpfad / Rootline Menu / Breadcrumb Menu
31-Aug-2010 17:16:13
Peter schrieb: Hallo Zusammen, ich hätte eine Frage: Ich würde gerne den Seitentitel der ersten Ebene oberhalb...
Seitentitel von übergeordneter Seite ausgeben
26-Aug-2010 21:32:42
Mo schrieb: Aktuell:...
Mehrere Domains in einer Typo3 Installation verwalten
English
Suche: