Grüße,
erstmal: Ich bin Typo3 Anfänger und bastel ein wenig an einer Testseite herum. Mein Problem ist eigentlich recht simpel, leider hat mich google aber noch nicht schlauer gemacht. 2 voneinander unabhängige Menüs funktionieren tadellos, allderdings benötige ich 2 voneinander abhängige Menüs.
- Hauptnavigation (bis zu 6 Menüpunkte)
- Subnavigation (beliebig viele Menüpunkte, in Abhängigkeit der Hauptnav)
Lief alles soweit wunderbar, nun habe ich mich ein wenig festgefahren und weiß nicht so recht weiter. Hier erstmal was ich bisher habe:
Meine Seitenstruktur (weitere Erläuterungen dazu unten):
Bild: img9.imageshack.us/…/bildschirmfotoj.png
Bild: img9.imageshack.us/…/w254.png
hier mein TypoScript:
page = PAGE
page {
# CSS einbinden usw.
[...]
10.marks {
# submenüs erstellen // vorerst kein special.value
# -> dyn. durch conditions unten
SUBMENU = HMENU
SUBMENU {
wrap = <div class="BM">|</div>
# special.value in condition
1 = TMENU
1.expAll = 1
1.alternativeSortingField = title asc
wrap = <ul>|</ul>
NO = 1
1.NO.wrapItemAndSub = <li>|</li>
}
# Hauptnavigation erstellen
MENU = HMENU
MENU {
special = directory
special.value = 23
1 = GMENU
1.alternativeSortingField = pid asc
1.NO = 1
1.NO {
XY = 120, 30
backColor = #808080
# Hauptnavigation Text auf Bild
10 = TEXT
10.text.field = nav_title // title
10.text.listNum = 0
10.fontColor = #ffffff
10.fontSize = 11
10.offset = 0, 20
10.align = center
}
}
[...]
}
############### conditions ################
##### subnav #####
[PIDinRootline = 70] OR [treeLevel = 3]
page.10.marks.SUBMENU = HMENU
page.10.marks.SUBMENU {
special = directory
special.value = 64
}
[global]
[PIDinRootline = 69] OR [treeLevel = 3]
page.10.marks.SUBMENU = HMENU
page.10.marks.SUBMENU {
special = directory
special.value = 63
}
[global]
[PIDinRootline = 68] OR [treeLevel = 3]
page.10.marks.SUBMENU = HMENU
page.10.marks.SUBMENU {
special = directory
special.value = 62
}
[global]
[PIDinRootline = 67] OR [treeLevel = 3]
page.10.marks.SUBMENU = HMENU
page.10.marks.SUBMENU {
special = directory
special.value = 61
}
[global]
[PIDinRootline = 66] OR [treeLevel = 3]
page.10.marks.SUBMENU = HMENU
page.10.marks.SUBMENU {
special = directory
special.value = 60
}
[global]
[PIDinRootline = 65] OR [treeLevel = 3]
page.10.marks.SUBMENU = HMENU
page.10.marks.SUBMENU {
special = directory
special.value = 59
}
[global]
Die Anzeige klappt wunderbar. Sobald ich in der Hauptnavigation z.b. auf "Training" (PID = 69) klicke, zeigt die Subnav die gewünschte Subnav an (training subnav, PID = 63).
Wenn ich nun auf einen Link unter "subnav training" klicke, z.b. "training subnav 1", wird der Inhalt wieder korrekt angezeigt, allerdings ändert sich die Subnav zur "subnav news". Die letzte Condition setzt den special.value der subnav auf 59, also der "news subnav".
Sobald ich nun auf irgendeinen Link der Subnav klicke, ändert sich die Subnav immer zur "news subnav", was so in der letzten Condition vermerkt ist. Ich nehme an, dass die Fallunterscheidung klappt, allerdings trifft die Bedingung "[treeLevel = 3]" (das Level, indem sich die subnav-Seiten befinden) immer zu.
Ich hab so ein doofes Gefühl, dass dieser Ansatz totaler Müll ist 🙂
Das treeLevel 3 ist nur für die Subnav reserviert und darf nicht woanders vorkommen. Außerdem hab ich so meine Bedenken ob das alles nachher wirklich Wasserfest funktionieren würde.
Vielleicht könnte man das so hinbiegen, es gibt jedoch bestimmt einen schlaueren Ansatz dafür.
Ich würde mich sehr über jegliche Tipps oder Links freuen.
Nachtrag:
Um es in einen Satz zu fassen: gibt es eine Möglichkeit, per Conditions ausgehend von einer PID alle Unterseiten anzusprechen?
Nachtrag 2:
Wenn ich die Concitions in [PIDinRootline = 70] OR [PIDupinRootline = 70] usw. ändere und auf einen Link in der Subnav klicke, zeigt mir die Subnav die Links:
* Hauptnavigation
* Navigation links
* Navigation oben
Ich bin grad etwas verwirrt :o