Zum Inhalt springen

[Menüobjekte] # Allgemeine Eigenschaften # maxItems bei TMENU

Erstellt am 13. März 2006 · 2 Antworten · letzte Antwort am 13. März 2006

Tags: Frage

TypoDreier ·

Hallo zusammen,

ich habe TYPO3 Ver. 3.6.0RC1 installiert und komme bei der Erstellung eines Menüs nicht weiter.

Wenn ich die Referenz richtig verstanden habe, hat jedes Menüobjekt die Eigenschaft maxItems (wenn nicht anders angegegeben). Leider schaffe ich es nicht, die Eigenschaft bei TMENU zu aktivieren.

Ich möchte ein Menü erstellen, das die ersten beiden Menüeinträge der ersten Ebene mit allen Einträgen der zweiten Ebene anzeigt.
1 Menü
1.1 Menü
1.2 Menü
1.3 Menü
2 Menü
2.1 Menü
2.2 Menü
2.3 Menü
2.4 Menü

M.E. muss ich nur "maxItems = 2" innerhalb des ersten TMENU definieren. Dies funktioniert bei mir leider nicht.

# Configuring the Auto-Parser:
plugin.tx_automaketemplate_pi1 {
    # Read the template file:
  content = FILE
  content.file = fileadmin/template/index.htm

    # Here we define which elements in the HTML that 
    # should be wrapped in subpart-comments:
  elements {
    BODY.all = 1
    BODY.all.subpartMarker = DOCUMENT_BODY

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

    TD.all = 1
    DIV.all = 1
  }

    # Prefix all relative paths with this value:
  relPathPrefix = fileadmin/template/
}

# Menu 1 cObject
temp.menu1= HMENU
temp.menu1.1 = TMENU  
temp.menu1.1 {
       maxItems = 2
       expAll = 1
     # Normal state properties
       NO.doNotLinkIt = 1
       NO.allWrap = <h3> | </h3>
}
  
 # Second level menu-object, textual
temp.menu1.2 = TMENU  
temp.menu1.2 {
      noBlur = 1
      wrap = <ul class="columnlinks"> | </ul>
    # Normal state properties
      NO.allWrap = <li> | </li>
}


# 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_1### subpart with dynamic value:
  subparts.menu1 < temp.menu1
  
    # Substitute the ###content### subpart with some example content:
  subparts.c3= TEXT
  subparts.c3.value = HELLO WORLD - MENU2

  # Substitute the ###content### subpart with some example content:
  subparts.c4= TEXT
  subparts.c4.value = HELLO WORLD - MENU3

}


# 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
}




# 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

Vielen Dank für Eure Hilfe!

Gruß
Jens

laptop24 ·

Hallo,

maxItems ist keine Eigenschaft von TMENU sondern von HMENU. Sprich man kann nicht für jede Ebene wählen, wieviele Elemente angezeigt werden, sondern nur vom gesamten Menü.

Gruß, Lars Thalheim

TypoDreier ·

Vielen Dank für die schnelle Antwort!

Das würde mein Problem natürlich erklären.

Verstehe ich dann die Referenz so falsch?
Unter https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ContentObjects/Hmenu/Index.html steht für HMENU bei min- bzw. maxItems folgende Anmerkung:
"Dies beeinflusst auch alle Untermenüs. Um diesen Wert für jedes Menü individuell einzustellen, setzen Sie die Eigenschaften in den Menü-Objekten (Siehe auch Tabelle »Allgemeine Eigenschaften)."

Als allgemeine Eigenschaft für alle Menüobjekte wird dann ein Attribut maxItems (https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/ContentObjects/Hmenu/Tmenu/Index.html#menu-common-properties) angegeben.

Worauf bezieht sich diese allgemeine Eigenschaft dann?

Gibt es ggf. einen anderen Weg, mein Vorhaben zu realisieren?

Vielen Dank
Jens