Zum Inhalt springen

Wie erstellt man ein Menü als Definitionsliste

Erstellt am 17. September 2010 · 4 Antworten · letzte Antwort am 1. Oktober 2010

Tags: Frage

Willy_Wonka ·

Hallo liebe Forumsmitglieder.

Kann mir bitte jemand erklären, wie man die folgende Form von Menü in TypoScript umsetzen kann?
Also als Link den Seitentitel und als <dd> den Untertitel eines Seitenobjektes.

Viele Grüße, Dietmar

<div id="mainnavi" class="navi">
  <ul>
   <li>
    <dl>
      <dt>
       <a class="first" href="willkommen.html">willkommen</a>
      </dt>
      <dd>ich bin eine dynamische beschreibung zu 'willkommen', aber nicht klickbar!</dd>
    </dl> 
   </li>
   <li>
    <dl>
      <dt>
       <a href="bilder.html">bilder</a>
      </dt>
      <dd>ich bin eine dynamische beschreibung zu 'bilder', aber nicht klickbar!</dd>
    </dl> 
   </li>
 </ul>
</div><!-- id="mainnavi" end -->
Willy_Wonka ·

Hallo.

So schaut mein Menü momentan aus, den linkWrap um das zusätzliche HTML für die Definitionsliste zu erweitern ist mir auch noch klar, aber wie ich das Feld Untertitel da reinbringe, ist mir nicht mehr klar.

Viele Grüße, Dietmar

lib.menu_top = HMENU
lib.menu_top {
	special = directory
	special.value = 174
	1 = TMENU
	# das sinnfreie javascript im onfocus entfernen
	1.noBlur = 1
	# um alles rum ul tags
	1.wrap = <ul>|</ul> 
	1.NO = 1
	# um einzelne tags
	1.NO.linkWrap = <li>|</li>
	1.ACT = 1
	# um einzelne aktive tags
	1.ACT.linkWrap = <li class="active">|</li>
}
Willy_Wonka ·
Willy_Wonka schrieb

Hallo.

So schaut mein Menü momentan aus, den linkWrap um das zusätzliche HTML für die Definitionsliste zu erweitern ist mir auch noch klar, aber wie ich das Feld Untertitel da reinbringe, ist mir nicht mehr klar.

Ganz konkret schaut mein Code nun folgendermassen aus. Kann mir jemand einen Rat geben, wie das auzubauen ist, damit das Feld Subtitel angezeigt wird und nicht der Platzhalter?

Viele Grüße, Dietmar.

lib.mainnavi = HMENU
lib.mainnavi {
    special = directory
    special.value = 262
    1 = TMENU
    # das javascript im onfocus entfernen
    1.noBlur = 1
    # um alles rum ul tags
    1.wrap = <ul>|</ul> 
    1.NO = 1
    # um einzelne tags
    #TODO accesskeys hinzufügen
    1.NO.allWrap = <li><dl><dt>|</dt><dd>{field:subtitle}</dd></dl></li>
    1.NO.insertData = 1
    # um einzelne aktive tags
    1.ACT = 1
    1.ACT.allWrap = <li class="active"><dl><dt>|</dt><dd>{field:subtitle}</dd></dl></li>
    1.ACT.insertData = 1
}
Willy_Wonka ·

Ich habe nun mit Hilfe dieses Forumseintrages die Lösung gefunden:
#79443

So schaut der Code (auch für ACT aus)

    1.NO {
        stdWrap.htmlSpecialChars = 1
        linkWrap = <li><dl><dt>|
            after {
                wrap = </dt><dd>|</dd></dl></li>
                field = subtitle
            }
    }