Einzelnen Beitrag anzeigen
  #3  
Alt 12.09.06, 11:05
Nejah Nejah ist offline
Forum Newbie
 
Registriert seit: 06.09.06
Alter: 22
Beiträge: 46

Hallo!

Hab' das Ganze jetzt anders gelöst, indem ich den Seitenbaum umgestellt habe. Dabei wird ausgenutzt, dass man mithilfe von TemplaVoila auf einer Seite sowohl das Template für die Seite selbst als auch das für die Unterseiten angeben kann:

-- [root] (id: 1)

---- login (id: 2)

------ home (id: 3)
-------- Navigation 1 (id: 4)
-------- Navigation 2 (id: 5)
-------- First nav level 1 bis n
---------- Second nav level 1 bis n

login enthält hier sein eigenes Template, home enthält einmal das Template für sich selbst und einmal das Template für seine Unterseiten. So ist es auch egal, dass ich mit entryLevel = 3 nicht weiterkomme (denn das geht immernoch nicht). Damit Navigation 1 und 2 nicht mit im Menü auftauchen, werden sie im Code explizit mit excludeUidList ausgeschlossen. Man könnte in der Seitenkonfiguration auch "Hide in Menu" auswählen. Dies ist aber unpraktisch, wenn die Seiten dennoch woanders z.B. in Breadcrumbs auftauchen sollen.

Typoscript-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
# Navigation menu
lib.nav = HMENU
lib.nav {
entryLevel = 2
excludeUidList = 4,5
wrap = ...
}

  # First level menu-object, textual
lib.nav.1 = TMENU
lib.nav.1 {
      # Normal state properties
NO.allWrap = ...
      # Enable active state and set properties:
ACT = 1
ACT.allWrap = ...
}

  # Second level menu-object of navigation, textual
lib.nav.2 = TMENU
lib.nav.2 {
      # Normal state properties
NO.allWrap = ...
      # Enable active state and set properties:
ACT = 1
ACT.allWrap = ...
}

  # Third level menu-object of navigation, textual
lib.nav.3 = TMENU
lib.nav.3 {
wrap = ...
      # Normal state properties
NO.allWrap =  ...  
      # Enable active state and set properties:
ACT = 1
ACT.allWrap = ...
}

Das Menü geht übrigens hinab bis Level vier. Dieser vierte Menü-Level wird an einer anderen Stelle der Seite aufgerufen, losgelöst von den anderen drei Leveln. Dafür wird ein eigenes HMENU benötigt (ich schreib's einfach noch als Erweiterung der Lösung dazu)

Typoscript-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
# Fourth level menu
lib.4lvlnav = HMENU
lib.4lvlnav.entryLevel = 5
lib.4lvlnav.1 = TMENU
lib.4lvlnav.1 {
NO = 1
NO.allWrap = ...
ACT = 1
ACT.ATagParams = ...
ACT.allWrap = ...
}
Mit Zitat antworten