Auswahlliste mit Liste von Unterseiten

Mit den Menüfunktionen von TypoScript ist es nicht nur möglich, normale Text- oder Grafikmenüs zu generieren. Als Alternative kann man zum Beispiel auch ein Menü als Drop Down Box (Auswahlliste, Combo-Box) darstellen. Hierzu müssen nur die einzelnen Punkte in der Liste speziell gewrapped werden.

TypoScript: Drop-down Box mit Unterseiten füllen

SETUP
temp.drop_down_box = COA
temp.drop_down_box {
  10 = HMENU
  10 {
     # Menü vom special-Typ 'directory': Unterseiten der aktuellen Seite holen
     special = directory
     # '123' ist die UID der Seite, deren Unterseiten in der Drop-down Box gelistet werden sollen
     special.value = 123
     # Selectbox mit JavaScript-Event 'onChange' für Sprung zur Zielseite, wenn ein Eintrag aus der Liste gewählt wurde
     wrap = <select name="dropdown_navi" size="1" onChange="document.location.href='index.php?id=' + this.value">|</select>
     1 = TMENU
     1 {
       expAll = 1
       noBlur = 1
       NO {
         # 'value' enthält die UID der gelisteten Seite (wird an Sprungziel oben gehängt)
         stdWrap.dataWrap = <option value="{field:uid}">
         allWrap = |</option>
         # Eintraege in Liste nicht verlinken
         doNotLinkIt = 1
       }
       # Angaben 'allWrap' und 'doNotLinkIt' aus NO-Bereich übernehmen
       CUR < .NO
       CUR = 1
       CUR {
       # Wenn aktuelle Seite, dann Listeneintrag als 'selected' markieren
         stdWrap.dataWrap = <option value="{field:uid}" selected="selected">
       }
     }
  }
}

Das Beispiel generiert eine Auswahlliste, die alle Seiten unterhalb einer angegebenen Seite beinhaltet. Per JavaScript onChange Eventhandler wird zur angeklickten Seite gesprungen. Befindet man sich auf der aktiven Seite, wird diese in der Dropdown-Liste als selected markiert und ausgewählt.

Besucher fanden diese Seite unter folgenden Suchbegriffen:

typo3 auswahlliste · typoscript dropdown · adessauswahlliste typo3 · typoscript list id · typo3 menü unterseiten