Zum Inhalt springen

HMENU Tags hinzufügen und Submenu einfügen

Erstellt am 29. Mai 2019 · 3 Antworten · letzte Antwort am 31. Mai 2019

Tags: TYPO3 9, Frage

derbenner ·

Folgendes Problem, ich habe ein HMenu welches ein Submenu enthält. Dieses Menü muss aber eine spezielle Struktur aufweisen.

Ist-Stand:

<ul class="menu main">
<li class="parent list2">
<a>Unterseiten Titel</a>
<div class="submenu">
<h3>Unterseiten Titel</h3>
<p>text</p>
<a href="/site/test">Unterseiten Titel</a>
</div>
<a href="/site/submenu1">Subsite 1</a>
<a href="/site/submenu2">Subsite 2</a>
<a href="/site/submenu3">Subsite 3</a>
</li>
</ul>

Soll-Zustand:

<ul class="menu main">
<li class="parent list2">
<a>Unterseiten Titel</a>
<div class="submenu">
<h3>Unterseiten Titel</h3>
<p>text</p>
<div class="links">
<a href="/site/submenu1">Subsite 1</a>
<a href="/site/submenu2">Subsite 2</a>
<a href="/site/submenu3">Subsite 3</a>
</div>
</div>
</li>
</ul>

Typoscript:

marks.MAINMENU = HMENU
	marks.MAINMENU {
		special = list
		special.value = 2,3,4,5,6

		1 = TMENU
		1 {
			expAll = 1
			wrap = <ul class="menu main">|</ul>
			noBlur = 1
			NO = 1
			NO.wrapItemAndSub.insertData = 1 #zum aktivieren
			NO.wrapItemAndSub = <li class="list{field:uid}">|</li>
			ACT = 1
			ACT.wrapItemAndSub.insertData = 1
			ACT.wrapItemAndSub = <li class="active list{field:uid}">|</li>
			ACT.ATagParams = class="mainmenu_act"

			IFSUB = 1
			IFSUB.wrapItemAndSub.insertData = 1
			IFSUB.wrapItemAndSub = <li class="parent list{field:uid}">|</li>
			IFSUB.allWrap = <a>{field:title}</a><div class="submenu"><h3>{field:title}</h3><p>text</p>|</div>
			IFSUB.allWrap.insertData = 1

			IFSUB.before.cObject = COA
			IFSUB.before.cObject{
				20 = FILES
				20{
					references {
						table = pages
						fieldName = media
					}
					renderObj = IMAGE
					renderObj {
						file.import.data = file:current:publicUrl
						file.width = 1200c
						file.treatIdAsReference = 1
						stdWrap.outerWrap = |
					}
				}
			}

			ACTIFSUB = 1
			ACTIFSUB.wrapItemAndSub.insertData = 1
			ACTIFSUB.wrapItemAndSub = <li class="parent active list{field:uid}"><a>{field:title}</a><div class="submenu"><h3>{field:title}</h3><p>text</p><div class="tags">|</div></div></li>
			ACTIFSUB.typolink >
		}
		2 < .1
		2.wrap = |
		2.NO.wrapItemAndSub = |
		2.ACT.wrapItemAndSub = |
		3 < .2
	}

Wie muss ich das Typoscript umstellen um die gewünschte Ausgabe zu erreichen?

Viele Grüße

Teisinger ·

Welche TYPO3 Version? (Wenn du das mit FLUID machen kannst - dann mach das damit, sollte deutlich leichter sein/verständlicher sein)

derbenner ·

Mit Fluid habe ich noch garnicht gearbeitet, wie müsste das TS und die Templatedatei aussehen?
Versand 9.5.7