TYPO3

Tutorials - Howto`s - Tipps & Tricks

Tutorials \ TypoScript \ Neuen Menütyp definieren
Tags: HMENU, TMENU
Klicks: 2495
Neuen Menütyp definieren
Von: danielpoetzinger
Am: 14.08.2006 - 16:31

Neuen Menütyp definieren

In diesem kleinem Tutorial wird gezeigt, wie man einen neuen Menütyp definiert. In diesem Beispiel soll ein Dropdown - Menü (Selectbox) aus den Unterseiten verschiedener Seiten erzeugt werden. Dabei sollen die Bereiche eine Optgroup sein, und die Unterseiten Einträge darin, bei Auswahl eines Eintrages soll automatsch auf die entsprechende Seite gesprungen werden. Schritt 1: Mit Hilfe von TSConfig einen neuen Eintrag im Inhaltselement "Menü/Sitemap" erzeugen:

TCEFORM.tt_content.menu_type.addItems.15 = spezielles Sendungsdropdown

Schritt 2: Mit Hilfe von TypoScript dieses neue Menü im TS-Objekt tt_content.menu.20 definieren. Da die Anforderungen an das Menü nicht ganz trival sind ist die Konstruktion des Dropdownmenüs mit Hilfe eines TMENU ein wenig Tricky:

tt_content.menu.20.15 = HMENU
//tt_content.menu.20.entryLevel=-1
tt_content.menu.20.15 {
 special=list
 special.value.field=pages
 wrap (
<script type="text/javascript">
<!--
function Go(x) {
 if(x != "") {   
   window.location.href = x;
   document.forms[0].reset();
   document.forms[0].elements[0].blur();
 }
}
//-->
</script> 
<form><select name="programm"
onChange="Go(this.form.programm.options[this.form.programm.options.selectedIndex].value)">
|</select></form>
 )  
 
 1=TMENU
 1.NO.allWrap=|">
 1.NO.wrapItemAndSub=<optgroup label="|</optgroup>
 1.NO.doNotLinkIt=1
 1.expAll=1
 
 2=TMENU
 2.NO.doNotLinkIt=1
 2.NO.before=
 
  2.NO.before {
   typolink.parameter.data=field:uid
   typolink.returnLast=url
  }
 2.NO.before.wrap=<option value="|">
 2.NO.allWrap=|</option>
}

Kommentare

To top TYPO3 - Tutorials - Howto`s - Tipps & Tricks