Zum Inhalt springen

3. Menüebene wird nicht angezeigt

Erstellt am 4. Februar 2007 · 8 Antworten · letzte Antwort am 17. Februar 2007

Tags: Frage

gorko122 ·

Hallo!
Mein Template zeigt derzeit nur 2 Menüebenen an, deshalb wollte ich es um eine 3. Ebene erweitern.

Dazu wollte ich folgenden Code verwenden:

temp.L3menuItems = HMENU
temp.L3menuItems.entryLevel = 2
temp.L3menuItems.1 = TMENU
temp.L3menuItems.1.NO {
  before.cObject < temp.mainTemplate
  before.cObject {
    workOnSubpart = SUB_L3MENU_ITEM
    marks.MENU_TITLE = TEXT
    marks.MENU_TITLE.field = title
    wraps.LINK = TEXT
    wraps.LINK {
      value = |
      typolink.parameter.field = uid
    }
  }
  doNotShowLink = 1
}
temp.L3menuItems.1.ACT < temp.L3menuItems.1.NO
temp.L3menuItems.1.ACT = 1
temp.L3menuItems.1.ACT.before.cObject.workOnSubpart = SUB_L3MENU_ITEM_ACT

temp.L3menu < temp.mainTemplate
temp.L3menu {
  
  workOnSubpart = SUB_L3MENU
  subparts.SUB_L3MENU_ALLITEMS < temp.L3menuItems
}

page.10.subparts.SUB_CONTENT_MARGIN.6 < temp.L3menu 

tt_content.menu.20.2 >
tt_content.menu.20.2 < temp.L3menu
tt_content.menu.20.2.subparts.SUB_L3MENU_ALLITEMS {
  special = directory
  special.value.field = pages
}

Leider zeigt es mit die 3. Ebene nicht an, auch nicht, wenn ich bei meinem vorhandenen Code entryLevel von 1 auf 2 ändere, dann zeigt es mir auch nichts an.

Was ist an dem Code falsch?

THX

skorpi ·

Also spannend finde ich ja, dass du dir das Menü aus HTML-Templates zusammen stöpselst.
Was dir in dem Zusammenhang bewusst sein sollte, ist, dass diese Art, einen Link zu erzeugen

wraps.LINK {
  value = |
  typolink.parameter.field = uid
}

(statt den "normalen" Weg zu gehen, dass vom Menü erledigen zu lassen) dazu führen kann, dass z.B. der Flag "Nicht im Menü zeigen" in einer Seite ignoriert wird.

Zu deiner Frage:
Wird die 3. Ebene denn angezeigt, wenn du mal ein "einfaches" Menü statt der komplizierten Variante einbindest? Hast du genug Ebenen im Seitenbaum?

gorko122 ·

Ebenen habe ich genug, aber ich weiß nicht, wie ich das Menü sonst erstellen soll. Als Vorlage habe ich das Template "crcph" verwendet.

Wie sieht denn ein "einfaches" Menü mit 3 Ebenen aus?
THX

gorko122 ·

Danke für die Antwort, ich habe das Tutorial kurz überflogen (bin derzeit im Stress, werde es am Wochenende unter die Lupe nehmen) und es sieht gut aus.

gorko122 ·

wie kann ich den Link vom Menü selbst erzeugen lassen?

muss ich dazu einen Marker definieren, der mir den Menütitel ausgibt und diesen dann mit einem Wrapper mit dem Link ummanteln? Leider weiß ich nicht wie das funktioniert 🙁

Kann mir jemand helfen?
THX

m.​att ·

ein einfaches menu sieht z.B. so aus:

temp.menu = HMENU
temp.menu.entryLevel = 1
temp.menu.1 = TMENU
temp.menu.1.NO.allWrap = <div id="menu"> | </div>
temp.menu.1.ACT = 1
temp.menu.1.ACT.allWrap = <div id="menu_act"> | </div>

Dein html template braucht keine links, dazu ist typo3 bzw. typoscript zuständig. Dein html template braucht nur die Marker.

Das Tut das dir skorpi verlinkt hat kann ich dir auch nur sehr zu herzen legen.

wie kann ich den Link vom Menü selbst erzeugen lassen?

Dazu brauchst du nicht weiter machen, das ist ja schliesslich der sinn vom HMENU object. In deinem bisherigen Typoscript verbietest du die links ausgeben zu lassen: "doNotShowLink = 1" (!!!)

gorko122 ·

Vielen Dank!

das mit dem dontShowLink habe ich vom crcph-template abgekupftert, da ich micht nicht gerade gut mit TypoScript auskenne.