Typoscript: Fluid-Menüs ausbauen.

Die Informationen, die Fluid von Typo3 erhält, können über tt_contents angepasst werden

Ich hatte das Problem, dass ich ein Pages-Menü so gestaltet habe, dass es perfekt aussah. Danach bekam ich die Information, dass bei Rollover die zweite Ebene gezeigt werden sollte. Ich versuchte erst, das Pages-Sitemap-Menü umzubauen, allerdings wurden mir hier nie die Informationen zur gewählten Seite angezeigt, sondern nur die der Unterseiten. Ich begab mich auf die Suche und fand eine interessante Methode, die Daten zu verändern, die Fluid für das Menu bekommt. Dies geschieht über das Setup im Bereich tt_contents:

 

tt_content.menu_pages.dataProcessing.10.levels = 2

 

Diese Veränderung gibt zum Beispiel die Unterseiten der gewählten Seiten im Pages-Menu an Fluid weiter. So konnte ich über das Konstrukt aus den Sitemap-Menüs eine zweite Ebene bei Rollover anzeigen:

 

            <f:if condition="{menu}">
                <ul class="lv-0">
                     <f:for each="{menu}" as="page">
                        <li class="lv-0">
                            <div class="menuitem">
                                <p>
                                    <a href="{page.link}"{f:if(condition: page.target, then: ' target="{page.target}"')} title="{page.title}" class="toplink">
                                        <span >{page.title}</span>
                                    </a>
                                </p>
                            </div>
                            <f:render section="Menu" arguments="{menu: page.children}" />
                        </li>
                    </f:for>
                </ul>
            </f:if>

<f:section name="Menu">
    <f:if condition="{menu}">
        <ul class="lv-1">
            <f:for each="{menu}" as="page">
                <li class="lv-1">
                    <a href="{page.link}"{f:if(condition: page.target, then: ' target="{page.target}"')} title="{page.title}">
                        <span>{page.title}</span>
                    </a>
                    <f:render section="Menu" arguments="{menu: page.children}" />
                </li>
            </f:for>
        </ul>
    </f:if>
</f:section>

 

Quelle und weitere Informationen unter www.thomaskieslich.de/blog/132-typo3-8-menues-mit-fluid-und-menuprocessor-erstellen/