Typo3 - Menü für 3. und 4. Ebene

südpol

Erfahrenes Mitglied
Hi,

ich habe eine Internetseite auf der mein Hauptmenü auf zwei ebenen besteht als
Menüpunkt 1
- Menüpunkt 1a
- Menüpunk 1b
Menüpunkt 2

Nun befinden sich unter dem Menüpunkt 1a weitere (im Hauptmenü nicht sichtbar) Seitenobjekte also z. B. so:

Menüpunkt 1
- Menüpunkt 1a
+ Content 1
++ Subcontent 1a
++ Subcontent 2a
+ Content 2

Alle Menüobjekte die sich nun in der zweiten oder dritten Ebene befinden würde ich gerne unter Menüpunkt 1a anzeigen lassen. Kann mir jemand sagen wie das geht? Ich habs schon mit nem Sitemap modul versucht aber das nimmt meine Startpositionen nicht an.

Liebe Grüße
 
Kann sein dass ich das jetzt falsch verstanden hab, aber du kannst Level 3 und 4 genau wie 1 und 2 bauen...

Code:
template.menu = HMENU
template.menu.entryLevel = 0
template.menu.1 = TMENU
template.menu.1{
  NO {
    wrap = |<br/>
  }
}
template.menu.2 = TMENU
template.menu.2 < template.menu.1
template.menu.2{
  NO{
    wrap = -> |<br/>
  }
}
template.menu.3 = TMENU
template.menu.3 < template.menu.1
template.menu.3{
  NO{
    wrap = --> |<br/>
  }
}
template.menu.4 = TMENU
template.menu.4 < template.menu.1
template.menu.4{
  NO{
    wrap = ---> |<br/>
  }
}
 
Hi,

ok - das mit dem entryLevel macht Sinn :) damit sollte es wohl gehen! Danke!

Noch eine Frage in dem Zusammenhang. Um dieses neue "menü" einfügen zu können muss ich ein neues Template für die Ebene Menüpunkt1a (z. B.) definieren.

Kann ich:
1. dieses Template nur als Erweiterung des Root-templates einsetzen und die Variable zur Befüllung des content Bereiches ersetzten?
2. Kann ich festlegen, dass dieses Template nur für dieses Element gilt und alle darunter liegenden Seiten weiterhin das root Template für die darstellung verwenden?

Vielen Dank!
 
Hi,

ich habe nun mal das Menü Objekt eingebaut. Dazu habe ich mein Roottemplate kopiert (also den typscript teil) und habe den code für das neue "menü" eingebaut und ihm gesagt, dass er dies in meinen content Bereich setzen soll. Leider macht er das nicht. Er ersetzt nun mein "altes" Menü durch die Objekte die im neuen Menü (content menü) auftauchen sollen und baut im content Bereich garkein Menü ein *heul* Kann man vielleicht nur ein Hmenü objekt pro Seite definieren oder mache ich sonst was falsch?

Hier mal mein code (für den Fall das das was bringt...)

Code:
config.simulateStaticDocuments = 0

#configure the auto-parser for the template
plugin.tx_automaketemplate_pi1 {
  #read the template file:
  content = FILE
  content.file = fileadmin/template/beispielpage/beispielpage.html

  #wrapp into sub parts
  elements {
    BODY.all = 1
    BODY.all.subpartMarker = DOCUMENT_BODY

    HEAD.all = 1
    HEAD.all.subpartMarker = DOCUMENT_HEADER
    HEAD.rmTagSections = title

    TD.all = 1
  }

  #add to all relativ paths
  relPathPrefix = fileadmin/template/beispielpage/
}

# Menu cObject
temp.menu = HMENU
temp.menu.entryLevel = 1

#First level menu-object
temp.menu.1 = TMENU
temp.menu.1.expAll = 1
temp.menu.1 {
  # Normal state properties
  NO.stdWrap.htmlSpecialChars = 1
  NO.allWrap = <div class="menu_level_1_no"> | </div>
  #Enable active state and set properties
  ACT = 1
  NO.stdWrap.htmlSpecialChars = 1
  ACT.allWrap = <div class="menu_level_1_act"> | </div>
}

#Second level menu-object
temp.menu.2 = TMENU
temp.menu.2.expAll = 1
temp.menu.2 {
  # Normal state properties
  NO.stdWrap.htmlSpecialChars = 1
  NO.allWrap = <div class="menu_level_2_no"> | </div>
  #Enable active state and set properties
  ACT = 1
  NO.stdWrap.htmlSpecialChars = 1
  ACT.allWrap = <div class="menu_level_2_act"> | </div>
}

# ------- content menu -------------#
temp_content.menu = HMENU
temp_content.menu.entryLevel = 10

temp_content.menu.1 = TMENU
temp_content.menu.1.expAll = 1
temp_content.menu.1{
  NO {
    wrap = <div class="content_tree_level1_no"> | </div>
  }
}
temp_content.menu.2 = TMENU
temp_content.menu.2.expAll = 1
temp_content.menu.2 < template.menu.1
temp_content.menu.2{
  NO{
    wrap = <div class="content_tree_level2_no"> | </div>
  }
}


# Main TEMPLATE cObject for the BODY
temp.mainTemplate = TEMPLATE
temp.mainTemplate {
  # Feeding the content from the Auto-parser to the TEMPLATE cObject:
  template =< plugin.tx_automaketemplate_pi1
  # Select only the content between the <body>-tags
  workOnSubpart = DOCUMENT_BODY

  # Substitute the ###menu### subpart:
  subparts.menu < temp.menu

  # Substitute the ###content### subpart:
  subparts.content < temp_content.menu
}


# Main TEMPLATE cObject for the HEAD
temp.headTemplate = TEMPLATE
temp.headTemplate {
  # Feeding the content from the Auto-parser to the TEMPLATE cObject:
  template =< plugin.tx_automaketemplate_pi1
  # Select only the content between the <head>-tags
  workOnSubpart = DOCUMENT_HEADER
}

#Language
page.config.language = de

# Default PAGE object:
page = PAGE
page.typeNum = 0

# Copying the content from TEMPLATE for <body>-section:
page.10 < temp.mainTemplate

# Copying the content from TEMPLATE for <head>-section:
page.headerData.10  < temp.headTemplate

#Index the content for the search engine
page.config.index_enable = 1

danke!
 
Hi

1) Du kannst mehr HMENUs pro Seite haben - das ist bestimmt nicht der Fehler
2) Hast du im Template der Subpage Clear: Constants / Setup was gesetzt?

Ansonsten seh ich eigentlich keinen Fehler...
 
Hi,

zu 1) danke das ist schon mal schön zu hören
zu 2) ich habe schon beides versucht. Leider wird immer das "normale" Menü "ersetzt" (siehe screenshots).

In dem Screenshot sieht man zuerst das komplette Menü. Das zweite Menü erschein nach einem klick auf 1a. Nach meinen Beispielen oben würde ich erwarten, dass dieser Inhalt im Content Bereich auftaucht der jedoch leer bleibt :(

Gruß
 

Anhänge

  • menu_1.gif
    menu_1.gif
    4,9 KB · Aufrufe: 3.446
  • menu_2.gif
    menu_2.gif
    3,2 KB · Aufrufe: 6.271
Hi,

ist zufällig zwischenzeitlich jemand über einen Lösungsansatz für mich gestolpert? bin langsam am verzweifeln und komme einfach nicht mehr weiter *heul*

Viele Grüße
 

Neue Beiträge

Zurück