Hallo zusammen!
habe ein GMENU, welches mittels register:count_HMENU_MENUOBJ die Menüpunkte als zahlen ausgibt. Funktioniert wunderbar. Nun möchte ich jedoch die angezeigten Menüpunkte auf max. 10 Stück einschränken. Die weiteren Punkte sollen über einen "weiter" oder "zurück" button erreicht werden.
Also so:
[01][02][03][04][05][06][07][08][09][10] [<] [>]
so soll das dann nach klick auf [>] "verschoben" werden:
[02][03][04][05][06][07][08][09][10][11] [<] [>]
usw...
Hat jemand schon Erfahrung mit sowas gemacht oder einen Tip, wie ich das lösen könnte?
Danke schon mal für Eure Hilfe!
Grüße
Marc
Hallo Marc,
eine Lehrstunde der TsRef > tsref.de > HMENU > https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ContentObjects/Hmenu/Index.html
und einfach lesen > 6. Eigenschaft: maxItems > Beschreibung beachten
lg georg
hi georg!
danke für deine Info! Das habe ich natürlich gleich probiert! Funktioniert prima, nur werden mir jetzt nur 10 punkte angezeigt. - was passiert aber mit den restlichen 15 ? ich möchte die möglichkeit haben, dass sich dass menü "verschiebt" wenn man auf "[>]" klickt. oder krasser:
von so:
[01][02][03][04][05][06][07][08][09][10] [<] [>]
auf so:
[11][12][13][14][15][16][17][18][19][20] [<] [>]
Ich hab mir jetzt echt schon nen Wolf gesucht und schon zig-tausend extensions probiert... aber denke das muss doch irgendwie über typo script zu lösen sein, und ich werde doch wohl nicht der einzige auf der welt sein, der das bisher gesucht hat?! 🙂
Hast mir da vielleicht noch nen Tip?
Danke schon mal an alle da draußen!
Marc
Hallo Marc,
hmmm so ganz trivial ist das IMO nicht mehr... ich würde begin & max mit sowas zu kombinieren:
#43102
georg
Hi Georg!
Danke für Deinen Post! Habe mir das nun angeschaut, werde aber einfach nicht schlau daraus 🙁 ich kapier nicht wo ich da was rein setzen muss... 🙁
mein script für das menü sieht so aus:
marks.SUBMENUE1=HMENU
marks.SUBMENUE1.maxItems=10
marks.SUBMENUE1.entryLevel = 2
marks.SUBMENUE1.1=TMENU
# hier expAll evtl auf 1 setzen wenn das Menü immer alle Unterpunkte anzeigen soll
marks.SUBMENUE1.1.expAll=0
marks.SUBMENUE1.1.wrap=<ul>|</ul>
marks.SUBMENUE1.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
stdWrap {
override.cObject = TEXT
override.cObject.value = {$plugin.tx_cagpagebrowser.indexword}
override.cObject.wrap = <span class="index">|</span>
}
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} |
}
An sich funktioniert das nun aber es werden eben nur 10 punkte gezeigt und ich kann nicht weiter schalten... diese geschichte mit dem counter ist ja hier schon drin, ich raffs nur nicht was ich da machen muss, damit das dann so geht wie ich mir das vorstelle *verzweifel*
muss ich nochmal ein menü anlegen welches die browse funktion drin hat damit ich vor und zurück schalten kann?
fragen über fragen...
viele Grüße!
Marc