Zum Inhalt springen

Menü im root-template durch ext-template überschreiben?

Erstellt am 29. Februar 2004 · 2 Antworten · letzte Antwort am 29. Februar 2004

Tags: Frage

larsen ·

Hallo,

ich habe im root-template auf der Startseite ein einfaches Menü:

# Menu 2 cObject
temp.menu_2 = HMENU
temp.menu_2.special = list
temp.menu_2.special.value = X,Y,Z
 # First level menu-object, textual
temp.menu_2.1 = TMENU
temp.menu_2.1 {
   expAll = 1
   # Normal state properties
  NO.allWrap = <div class="menu2-level1-no"> | </div>
  NO.stdWrap.htmlSpecialChars = 1
   # Enable active state and set properties:
  ACT = 1
  ACT.stdWrap.htmlSpecialChars = 1
  ACT.allWrap = <div class="menu2-level1-act"> | </div>
}
 # Second level menu-object, textual
temp.menu_2.2 = TMENU
temp.menu_2.2 {
   # Normal state properties
  NO.allWrap = <div class="menu2-level2-no"> | </div>
  NO.stdWrap.htmlSpecialChars = 1
   # Enable active state and set properties:
  ACT = 1
  ACT.stdWrap.htmlSpecialChars = 1
  ACT.allWrap = <div class="menu2-level2-act"> | </div>
}

...

temp.mainTemplate = TEMPLATE
temp.mainTemplate.subparts.menu_2 < temp.menu_2

...
page = PAGE
page.typeNum = 0
page.10 < temp.mainTemplate

Auf einer Unterseite soll dieses Menü durch ein anderes ersetzt werden.
Ich habe bis jetzt auf dieser Unterseite ein ext-template erstellt und den Code für das neue Menü in das Setup-feld gebracht:

# Menu 2 cObject
temp.menu_2 = HMENU
temp.menu_2.special = list
temp.menu_2.special.value = X
 # First level menu-object, textual
temp.menu_2.1 = TMENU
temp.menu_2.1 {
   expAll = 1
   # Normal state properties
  NO.allWrap = <div class="menu2-level1-no"> | </div>
  NO.stdWrap.htmlSpecialChars = 1
   # Enable active state and set properties:
  ACT = 1
  ACT.stdWrap.htmlSpecialChars = 1
  ACT.allWrap = <div class="menu2-level1-act"> | </div>
}
 # Second level menu-object, textual
temp.menu_2.2 = TMENU
temp.menu_2.2 {
   # Normal state properties
  NO.allWrap = <div class="menu2-level2-no"> | </div>
  NO.stdWrap.htmlSpecialChars = 1
   # Enable active state and set properties:
  ACT = 1
  ACT.stdWrap.htmlSpecialChars = 1
  ACT.allWrap = <div class="menu2-level2-act"> | </div>
}

Es ändert sich aber leider nichts. auf der Unterseite wird weiterhin das Menü der Startseite angezeigt.
Ich habe auch schon probiert

temp.mainTemplate.subparts.menu_2 < temp.menu_2

in das ext-template einzufügen oder das root-template zu "includen". Alles ohne Erfolg.
Es ist wahrscheinlich nur ein dummer (Denk)Fehler. Bin für jede Hilfe dankbar.

Grüße
larsen

jweiland ·

Das neue Menü wird zwar im Extension Template definiert, aber es wird niicht wirksam, weil es dann am PAGE Objekt keine Änderung durchführt.

Füge mal die folgenden zwei Zeilen an das Listing im Extension Menü an:

page.10.subparts.menu_2 >
page.10.subparts.menu_2 < temp.menu_2

Mit der ersten Zeile werden alle Eigenschaften des bisherigen Menüs gelöscht (falls erforderlich), die zweite Zeile lässt das neue Menü im Page Objekt wirksam werden.

Jochen Weiland