hallo versuche seit tagen ein menu aus einer Vorlage zu Realisieren, leider habe ich es nicht hinbekommen.
Also die Vorlage sieht wie folgt aus:
<ul id="nav">
<li class="active"><a href="#">Wissen</a>
<ul class="zweiteEbene">
<li><a href="#">Unterpunkt</a>
<ul class="dritteEbene">
<li><a href="#">Unterpunkt_2</a></li>
<li><a href="#">Unterpunkt_3</a></li>
</ul>
</li>
<li><a href="#">Förderung</a></li>
<li><a href="#">Rechtsformen</a></li>
<li><a href="#">Geschäftsidee</a></li>
<li><a href="#">Franchise</a></li>
<li class="last"><a href="#">Service</a></li>
</ul>
</li>
<li><a href="#">aktuelles</a></li>
<li><a href="#">Gastbeiträge</a></li>
<li><a href="#">Nachrichten</a></li>
<li><a href="#">Forum</a></li>
<li class="last"><a href="#">Tools</a></li>
</ul>
Würde um freuen wenn ihr mir helfen könntet.
Was hast Du denn schon für TypoScript versucht?
Grundsätzlich ein paar Tipps:
das machst Du mit einem Standard HMENU - TMENU
die uls machst Du über wrap, die lis mit allWrap, jeweils je Ebene
die active Unterscheidung machst Du über den Menüzustand ACT bzw. CUR
den "last"-Eintrag bekommst Du beim allWrap über optionSplit hin
Mit diesen Stichwörtern müsstest Du Dir die Infos eigentlich gut aus der TypoScript Referenz zusammensuchen können.
https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Index.html
Viele Grüße,
Niki
Hatte folgendes gemacht gehabt:
#ERSTELLEN DER NAVIGATION
#Erste Ebene links
temp.menu_1 = HMENU
temp.menu_1.1 = TMENU
temp.menu_1 = HMENU
temp.menu_1.1 = TMENU
temp.menu_1.1.special.entryLevel = -1
temp.menu_1.1 {
NO.allWrap = <li>|</li> |*||*| <li class="last"> | </li>
CUR = 1
CUR.allWrap = <li class="active">|</li> |*||*| <li class="active last"> | </li>
ACTIFSUB = 1
ACTIFSUB.allWrap = <li class="active">|</li> |*||*| <li class="active last"> | </li>
noBlur = 1
special = rootline
special.range = 2 | -1
}
#Zweite Ebene
temp.MENU2 = HMENU
temp.MENU2 {
entryLevel = 1
wrap = |
1 = TMENU
1 {
wrap = |
expAll = 1
NO.ATagTitle.field = subtitle//title
NO.wrapItemAndSub = <li>|</li>|*|<li>|</li>|*|<li class="last">|</li>
CUR = 1
CUR.wrapItemAndSub = <li class="active">|</li>|*|<li class="active">|</li>|*|<li class="active last">|</li>
ACTIFSUB = 1
ACTIFSUB.wrapItemAndSub = <li class="active">|</li>|*|<li class="active">|</li>|*|<li class="active last">|</li>
}
2 = TMENU
2{
wrap = <ul class="dritteMenuEbene active"> | </ul>
expAll = 1
NO.ATagTitle.field = subtitle//title
NO.wrapItemAndSub = <li> | </li>
}
}
Das Template mit den Submarkern sieht wie folt aus:
<ul id="nav">
<!-- ###menu_1### --> <!-- ###menu_1### -->
<li class="active">
<ul class="zweiteMenuEbene">
<!-- ###MENU2### --> <!-- ###MENU2### -->
</ul>
</li>
</ul>
Die Struktur mit der zweitenEbene und der drittenEbene ist wie in der Vorlage geworden, nur die Verknüpfung von der 1.Ebene mit der zweitenEbene hat nicht funktioniert, probiere seit stunden nur weiß nicht mehr was ich machen kann
mach ein zusammenhängendes Menü
also nur ein Marker "###menu_1###" im HTML Template, und dann das Menü aufbauen mit
menu_1 = HMENU
menu_1 {
1 = TMENU
1.NO etc etc
2 = TMENU
2.NO etc etc
}
Ansonsten schaut das schon gar nicht so verkehrt aus was Du gemacht hast
viele Grüße
Niki
Schau mal habe es jetzt so umgeändert das alles in einem ist, wie du es vorgeschlagen hast:
temp.menu_1 = HMENU
temp.menu_1 {
1 = TMENU
1 {
special.entryLevel = -1
NO.allWrap = <li>|</li> |*||*| <li class="last"> | </li>
CUR = 1
CUR.allWrap = <li class="active">|</li> |*||*| <li class="active last"> | </li>
ACTIFSUB = 1
ACTIFSUB.allWrap = <li class="active">|</li> |*||*| <li class="active last"> | </li>
noBlur = 1
special = rootline
special.range = 2 | -1
}
2 = TMENU
2 {
entryLevel = 1
wrap = <ul class="zweiteMenuEbene">|</ul>
expAll = 1
NO.ATagTitle.field = subtitle//title
NO.wrapItemAndSub = <li>|</li>|*|<li>|</li>|*|<li class="last">|</li>
CUR = 1
CUR.wrapItemAndSub = <li class="active">|</li>|*|<li class="active">|</li>|*|<li class="active last">|</li>
ACTIFSUB = 1
ACTIFSUB.wrapItemAndSub = <li class="active">|</li>|*|<li class="active">|</li>|*|<li class="active last">|</li>
}
3 = TMENU
3 {
wrap = <ul class="dritteMenuEbene active"> | </ul>
expAll = 1
NO.ATagTitle.field = subtitle//title
NO.wrapItemAndSub = <li> | </li>
}
}
Das Template sieht jetzt so aus:
<div class="navigation">
<ul id="nav">
<!-- ###menu_1### --> <!-- ###menu_1### -->
</ul>
</div>
Und die ausgabe so :
<div class="navigation">
<ul id="nav">
<li class="active">Erstes ELem Ebene 1</li>
<ul class="zweiteMenuEbene">
<li class="active">Wissen
<ul class="dritteMenuEbene">
<li class="active">Element der 3.Ebene</li>
</ul>
</li>
</ul>
</ul>
</div>
Die verkettung zwischen 2. und 3. ebene ist perfekt🙂
Aber zwischen der 1. und der 2. eben funktioniert es nicht so ganz.
Also das </li> nach dem Erstes Elem Ebene sollte nach der <ul class="zweiteMenuEbene"> zu gehen
Kann mir denn keiner Helfen! 😢
mach doch mal ohne das special entrylevel das brauchts eigentlich nicht. Menü Template einfach im root aufhängen dann arbeitet es sich automatisch nach unten durch.
Viele Grüße!
Niki
hi niki,
es hat leider nicht Funktioniert, habe alles was mit entrylevel und special zu tun
hat schritt für schritt auskommentiert.
Aber das ergebnis blieb gleich also keine Änderung.
Habe leider keine Hoffnung sowie ne Idee das dies Lösbar ist .
Würde mich aber um eure Unterstützung freuen...
Hallo,
LI mit allWrap ist natürlich blödsinn. Nimm auch in der 1. Ebene NO.wrapItemAndSub
georg
hi
cool es geht 🙂
danke euch vielmals für eure Hilfe danke 😃