Hallo.
Ich habe folgende Frage. Mein Menü besteht zur Zeit aus 2 Ebenen die zusammen in einem vertikalen Klappmenü angezeigt werden. Manche Bereiche der Seite haben allerdings noch einen dritten Level. Diesen möchte ich nicht in dem gleichen Klappmenü darstellen. Diese sollen in der rechten Spalte dargestellt werden. Dort habe ich einen Marker LEVEL3 angelegt, weiss aber nun nicht wie ich ihn ansprechen kann.
Folgendes habe ich mir gedacht, funktioniert leider nicht.
# Die Navigation im Platzhalter NAVIGATION erstellen
# 1. Navigationslevel
NAVIGATION = HMENU
NAVIGATION {
special = directory
special.value = 3
entryLevel = 1
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="nav_main"
1.NO.linkWrap = | |*| <br />| |*| <br />|
# 2. Navigationslevel
2 = TMENU
2.NO = 2
2.NO.ATagParams = class="nav_sub"
2.NO.linkWrap = <br />
}
# Die Navigation im Platzhalter LEVEL3 erstellen
# 3. Navigationslevel
LEVEL3 = HMENU
LEVEL3 {
special = directory
special.value = 3
entryLevel = 3
3 = TMENU
3.NO = 3
3.NO.ATagParams = class="nav_sub"
3.NO.linkWrap = | |*| <br />| |*| <br />|
}
Ich bin über jede Anregung/Lösung dankbar und bedanke mich für eure Mühe.
Michael
Mittlerweile habe ich rausgefunden, dass es über den entryLevel wohl nicht geht, da dieser wohl nur angibt wo die Hilfsseite für die Navigation liegt. Somit bin ich ratlos wie ich den dritten Navigationslevel an einer anderen Stelle positioniere.
Hat jemand Rat?
Danke. Michael
lol. ....
Habe in deinem "anderen Post" einen Tipp reingeschrieben.
Hi,
also es funktioniert mit special = directory wenn ich als value die betreffende Seite mit den Unterseiten als uid angebe. Das Problem ist aber, dass diese uid dynamisch sein soll. Ich weiss im Vorfeld nicht wo später mal dritte Ebenen eingefügt werden und wo nicht. Für Ebene 1 und 2 habe ich je eine Shortcutseite mit einer uid. Für die dritte Ebene geht das nicht mehr.
Beispiel mit fester uid (Special Value)
# Die Navigation im Platzhalter NAVIGATION erstellen
# 1. Navigationslevel
NAVIGATION = HMENU
NAVIGATION {
special = directory
special.value = 3
entryLevel = 1
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="nav_main"
1.NO.linkWrap = | |*| <br />| |*| <br />|
# 2. Navigationslevel
2 = TMENU
2.NO = 2
2.NO.ATagParams = class="nav_sub"
2.NO.linkWrap = <br />
}
# Die Navigation im Platzhalter LEVEL3 erstellen
# 3. Navigationslevel
LEVEL3 = HMENU
LEVEL3 {
special = directory
special.value = 26
entryLevel = 1
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="nav_sub"
1.NO.linkWrap = | |*| <br />| |*| <br />|
}
Wenn ich einfach den gesamten Navigationsbaum abfrage und als entryLevel 3 angebe zeigt er mir leider gar nichts an. Ich hatte gehofft, dass er dann immer nur die dritte Ebene anzeigt.
Vieleicht bin ich auch zu blöd und sehe die Lösung in dem PDF das Du als Referenz angegeben hast nicht ganz. (http://typo3.net/uploads/media/dokumentation.pdf, 64ff).
Vielleicht hast Du oder jemand anderes noch einen Rat?
Danke
Michael
Hi.
Habe es bisher immer so gelöst, dass ich im Level2 Subtemplates mit eben "special directory" benutzt habe.
Wenn du einfach den entryLevel3 angibst, weiss deine Navigation ja nicht, welcher Menüpunkt, bzw. welches Unterlevel des Level2 angezeigt werden soll - leuchtet das ein?
Du hast einen Baum mit Level2 und Level3 Ästen. Sinn und Zweck des HMENU - doch wenn du ein Level2-Ast aktiv hast, ist die Verknüpfung zum zugehörigen Level3-Ast nicht gegeben, und das löse ich mit special.
cya
Hi toyde 😃 ,
mir leuchtet jetzt ein, dass meine navi für den 3. Level nicht weiss welche Unterseiten sie darstellen soll. Meinst Du demnach mit subtemplate eine Hilfseite als Shortcut wie für die Navigation des ersten Levels? Vermutlich nicht. Sonst müsste man ja für jeden Menüpunkt des ersten Levels eine solche einfügen und hat viele uid's. Bin leider immer noch ratlos :o .
Gruß
Michael
Lol, hab bald nen Knoten von den 2 Threads ;P
Habe irgendwo *g* doch die Seitenzahl der deutschen Doku gepostet. Lies dir Seite 64/65 doch durch - es steht samt Code und Screenshot alles dort.
Hi,
die Seiten habe ich gelesen und anhand dessen meine Hauptnavi mit den 2 Level erstellt, was auch prima funktioniert. Ich kann darin aber nicht entdecken wie ich die abgeschnittene, separate Subnavi für den dritten Level in einem anderen Bereich der Seite erstelle. Mir ist nicht klar wie mir die Doku dabei helfen kann. Mit meinem Typoscript KnowHow ist es auch noch nicht besonders weit.
Gruss
Michael
- 1 Marker/Subpart für Hauptmenü
- 1 Marker/Subpart für dein 2.Menü / Untermenü
Im HTML logischerweise also die beiden Marker/Subparts platzieren. Das Hauptmenü hast du ja. Davon ausgehend zusammen mit den Codesnippets aus der Doku bastelst du dir dein Untermenü, das mit special wunderbar klappt.
Falls du Probleme mit Markern/Subparts oder Navigationen hast, dann würde ich dir raten mehr über HMENU und Special nachzulesen.
OK, das werde ich mir mal anschauen und versuchen. Danke soweit.
Gruss
Michael
Hi,
ich habe 2 Submarker (NAVIGATION und LEVEL3) erstellt. Mit folgendem Script spreche ich beide an und es werden zur Zeit in beiden Submarkern alle 3 Ebenen angezeigt. Nun weiss ich nicht weiter. Wie blende ich in LEVEL§ die ersten beiden Ebenen aus? Da brauche ich nochmal einen Hinweis.
Gruß
Michael
10.subparts {
# Navigation linke Spalte
# 1. Navigationslevel
NAVIGATION = HMENU
NAVIGATION {
special = directory
special.value = 3
entryLevel = 1
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="nav_main"
1.NO.linkWrap = | |*| <br />| |*| <br />|
# 2. Navigationslevel
2 = TMENU
2.NO = 2
2.NO.ATagParams = class="nav_sub"
2.NO.linkWrap = <br />
# 3. Navigationslevel NUR VORÜBERGEHEND
3 = TMENU
3.NO = 3
3.NO.ATagParams = class="nav_sub"
3.NO.linkWrap = <br />
}
# Navigation rechte Spalte
# 1. Navigationslevel
LEVEL3 = HMENU
LEVEL3 {
special = directory
special.value = 3
entryLevel = 1
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="nav_main"
1.NO.linkWrap = | |*| <br />| |*| <br />|
# 2. Navigationslevel
2 = TMENU
2.NO = 2
2.NO.ATagParams = class="nav_sub"
2.NO.linkWrap = <br />
# 3. Navigationslevel NUR VORÜBERGEHEND
3 = TMENU
3.NO = 3
3.NO.ATagParams = class="nav_sub"
3.NO.linkWrap = <br />
}
}
hi
weshalb möchtest du das Hauptmenü ausblenden?
Verstehe die Logik betreffend der Hierarchie nicht ganz, dann kann ich evtl. noch weiterhelfen.
Wenn du ein Menü/Subpart ausblenden/löschen/leeren möchtest, kannst du ja
NAVIGATION =
#oder
NAVIGATION >
verwenden.. (das leert den Parameter, bzw. überschreibt ihn mit "")
Aber wie das bei einer Homepage Sinn macht, musst du mir etwas auf die Sprünge helfen. (evtl. sogar Screenshot/Link?. Wenn's sein muss auch PM).
cya
edit:
------
sry, jetzt komm ich erst nach, was du meinst.
Du hast in deiner rechten Spalte das ganze Menü ja nochmals definiert!
Finde ich etwas seltsam deine Frage, da du das Menü ja selbst mit den Levels 1+2+3 nachgebaut hast ;P Was du machst: Du baust auch level1+2 ein, und möchtest es wieder ausblenden - macht das Sinn? Überleg mal.
Ausserdem:
Bist du sicher, dass du special directory verstanden hast? Ich glaube du hast ein kleines Durcheinander wie man HMENU (hierarchisches Menü bezogen auf Page-Tree) und das special-Menü unterscheidet. Kennst du den Unterschied?
Hi.
ich hatte befürchtet, dass wir eventuell aneinander vorbeireden.
Liegt vielleicht an meiner Darstellungsweise.
Worum es mir geht: Ich habe eine Navigation mit max 3 Ebenen. In
einer linken Spalte möchte ich die ersten beiden Ebenen ausgeben.
Die dritte Ebene, die es nicht immer gibt, soll in der rechten Spalte
erscheinen.
Ich habe in meinem letzten Post einfach die Navi nochmal aufgezogen um
zu sehen ob es funktioniert den Submarker anzusprechen. Aber eigentlich soll
da nur die dritte Ebene erscheinen. Wenn es keine dritte Ebene gibt, dann
bleibt der Bereich leer.
In dem Shot, den Du unter http://www.limbic-entertainment.de/screenshot.gif findest, siehst Du:
Ebene 1: Unternehmen
Ebene 2: Partner
Ebene 3: RTL
Jeder Partner, wie RTL, hat je eine eigene Seite, die dritte Ebene.
Die Navi dazu soll in der rechten Spalte erscheinen. Die fehlt mir.
In dem Shot als Partner 1 bis Partner n eingezeichnet.
Vielleicht ist es jetzt etwas klarer.
Michael
Nochmal zu Deiner Frage:
Wie ich das verstehe mit HMENU und special.
HMENU ist ein hierarchisches Menü. Davon gibt es verschiedene Arten: Text, Grafisch usw.
Special definiert praktisch die Hierachie.
Directory ist eine Baumstruktur ausgehend von einer Seite und stellt alle
verknüpften Seiten dar. Dafür nimmt man dann z.B. Die Hilfsseite "Navigation".
als Shortcut.
Für die dritte Ebene kann ich leider keine eindeutige Shortcutseite definieren. Deswegen dachte ich mir, es müsste irgendwie gehen den
ganzen Baum abzufragen aber nur die dritte Ebene darzustellen.
The Gardener schriebSpecial definiert praktisch die Hierachie.
Directory ist eine Baumstruktur ausgehend von einer Seite und stellt alle
verknüpften Seiten dar. Dafür nimmt man dann z.B. Die Hilfsseite "Navigation".
als Shortcut.
Special definiert welche Art Menü. "Hierarchie" stellt HMENU dar ;P Directory sagt einfach von welcher Seite aus der Ast angezeigt werden soll (nenne es nicht shortcut, das verwirrt die Leser 😉.
The Gardener schriebFür die dritte Ebene kann ich leider keine eindeutige Shortcutseite definieren. Deswegen dachte ich mir, es müsste irgendwie gehen den
ganzen Baum abzufragen aber nur die dritte Ebene darzustellen.
Und weshalb kannst du das nicht? Wo liegt das Problem? Doku nicht gelesen? - Wie hast du denn das rechte obere Menü gezaubert? ;P
Schau, alles was du für deine rechte Spalte brauchst ist (beziehe mich jetzt auf deinen Screenshot):
"Wenn Seite 'Partner' aktiv, dann Partner 1-n rechts anzeigen"..
Dann sagst du im TypoScript deiner Seite 'Partner' doch logischerweise;
special = directory
# 31= ID der 'Partner'-Seite
special.value = 31
Das heisst zwar subTemplates erstellen, aber klappt.
cya
Zusatz:
Eines meiner subTemplates für das 2. Level(bei dir als subTemplate der Seite "Partner" anzusehen). Bei mir werden Hauptmenü oben und 2.-Submenü links dargestellt.
### NAVIVER-Configs - werden je nach Submenu ueberschrieben
temp.menu_2 = HMENU
temp.menu_2.special = directory
temp.menu_2.special.value = 96
temp.menu_2.1 = TMENU
temp.menu_2.1.NO.linkWrap = <tr><td height="10" class="NAVIVERLINK" valign="top"> | ::</td></tr>
temp.menu_2.1.ACT = 1
temp.menu_2.1.ACT.linkWrap = <tr><td height="10" class="NAVIVERLINKACT" valign="top"> | ::</td></tr>
### Konfiguration in Haupttemplate beruecksichtigen
page.10 {
subparts.TPL_NAVIVER = COA
subparts.TPL_NAVIVER {
10 < temp.menu_2
}
}
TPL_NAVIVER stellt meine vertikale Navigation im HTML-Template dar.
subTemplates erstellen(alle drei Häckchen raus) und den oberen Code in's Setup rein. Der untere Teil meines Codes dient dazu, die Navigation in mein Haupt-TypoScript-Template aufzunehmen(page.10).
Hey Toyde,
vielen Dank für Deine Mühe. Jetzt habe ich auch das Prinzip verstanden auf das Du hinaus wolltest. Im Subtemplate wird die dritte Ebene ausgehend von der Seite der 2. Ebene aufgebaut. Dieses Subtemplate muss man für jede Seite der 2. Ebene erstellen (Sofern man die dritte Ebene ermöglichen möchte). Das Haupttemplate kopiert oder übernimmt die Werte aus dem Subtemplate und stellt entsprechend die dritte Ebene dar. Richtig?
So weit so gut. Habe das mal umgesetzt. Mein Submarker wird auch angesprochen, die Navi leider nicht angezeigt. Nach stundenlangem suchen finde ich den Haken nicht. Eigentlich müste es jetzt so laufen.
page = PAGE
page {
typeNum = 0
# Designvorlage integrieren
10 = TEMPLATE
10 {
template = FILE
template.file = fileadmin/vorlage_01.html
workOnSubpart = DOKUMENT
marks {
# Die Hauptnavigation im Platzhalter NAVIGATION erstellen
# 1. Navigationslevel
NAVIGATION = HMENU
NAVIGATION {
special = directory
special.value = 3
entryLevel = 1
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="mainmenu_no"
1.NO.linkWrap = | |*| <br />| |*| <br />|
1.ACT = 1
1.ACT.ATagParams = class="mainmenu_act"
1.ACT.linkWrap = | |*| <br />| |*| <br />|
# 2. Navigationslevel
2 = TMENU
2.NO = 2
2.NO.ATagParams = class="submenu_no"
2.NO.linkWrap = <br />
2.ACT = 2
2.ACT.ATagParams = class="submenu_act"
2.ACT.linkWrap = <br />
}
}
subparts.LEVEL3 = COA
subparts.LEVEL3 {
10 < temp.menu_2
}
}
}
temp.menu_2 = HMENU
temp.menu_2 {
special = directory
special.value = 26
1 = TMENU
1.NO = 1
1.NO.ATagParams = class="submenu_no"
1.NO.linkWrap = <br />
1.ACT = 1
1.ACT.ATagParams = class="submenu_act"
1.ACT.linkWrap = <br />
}
Habe zur Zeit keine Idee. Vielleicht seh ich den Wald vor lauter Bäumen wieder nicht.
Gruss
Michael
Eine andere Sache, die ich mich frage. Wenn jetzt ein Redakteur eine neue Seite in der 2. Ebene einfügt und dazu auch unterseiten, dann wird die Navigation nicht angezeigt. Das Subtemplate fehlt ja. Das ist ein Nachteil an dieser Methode.
Gruss
Michael