[TYPO3-german] Verschachtelte if Abfragen in fluid

Philipp Holdener philipp.holdener at me.com
Fri Dec 20 14:48:22 CET 2013


Herzlichen Dank euch beiden für die Ausführungen.
Werde ich mir mal in Ruhe durchlesen und beim nächsten mal hoffentlich 
verwenden können.

Frohe Festtage und einen guten Rutsch allseits.

Gruss
Philipp




>   Kein Problem :)
>
> Du kannst in fluid Templates partials benutzen. Partials lagern primär
> einen gewissen Teil der Arbeit in ein anderes Teil-Template aus. Das
> ermöglicht es, zB mehrere Seiten-Templates mit vollständig
> unterschiedlichen Strukturierungen anzulegen. Gleiche Elemente wie die
> Navigation sollten ann nicht dupliziert angelegt werden, sondern in
> partials.
> Diese können dann von den Seitentemplates geladen werden.
>
> <f:render partial="Foo/Bar" arguments="{user: me}"/>
>
> Damit würdest du ein Template anweisen, an genau dieser Stelle ein partial
> zu rendern, mit einem array aus argumenten, die dann im Template zur
> Verfügung stehen (in diesem Fall würde dir im Partial eine Variable/ein
> Objekt, je nachdem, was es im Original ist,  {user} zur Verfügung stehen.
>
> Eine Section funktioniert grundsätzlich genauso, der Unterschied ist,
> aber, das Sections grundsätzlich nur im lokalen Template zur Verfügung
> stehen (es sei denn Partial. dazu später).
>
> Du könntest also ein Template haben:
> <f:section name="main">
> <f:comment>
> Hier wird ein slider gerendert...
> </f:comment>
> <div class="blubb">
> <f:for each="{slides}" as="slide">
> <f:if condition="...">
> <f:then>
> <f:render section="sliderLayout1" arguments="{slide: slide}"/>
> </f:then>
> <else>
> <f:render section="sliderLayout2" arguments="{slide: slide}"/>
> </f:else>
> </f:for>
> </div>
> </f:section>
> <f:section name="sliderLayout1">
> {slide.image -> f:debug()}
> </f:section>
> <f:section name="sliderLayout2">
> {slide.image -> f:debug()}
> </f:section>
> (https://gist.github.com/cedricziel/8054573)
>
> Du kannst aber auch in Partials sections haben, und wie folgt rendern:
> <f:render partial="Slider/Slide" section="layout1" arguments="{slide:
> slide}"/>
>
> Hier suchen wir im partialsRootPath im Verzeichnis Slider das Partial Slide
> und rendern es mit den Argumenten.
> Damit lassen sich komplexere Strukturen besser verschachteln und die
> einfachen Templates werden sauberer und kleiner.
>
> Es gibt noch eine magische Variable, die man eher in Page Templates
> gebrauchen kann: {_all}
> Damit stehen nach folgender Anweisung
> <f:render partial="Slider/Slide" section="layout1" arguments="{_all}"/>
> Alle variablen und Objekte aus dem aktuellen Scope (aus der aktuellen
> Section. Variablen gelten immer nur in einer Section!) zur Verfügung.
>
> Als Beispiel hätte ich noch:
> https://github.com/Ecodev/bootstrap_package/blob/master/htdocs/typo3conf/ext/speciality/Resources/Private/Layouts/Page.html
>
> Ein Page Template, das mit Partials und Sections zusammen getackert wird.
> https://github.com/Ecodev/bootstrap_package/blob/master/htdocs/typo3conf/ext/speciality/Resources/Private/Partials/Navigation.html
>
> Ein passendes Partial dazu.
>
> Ich kapsele zB alle Navi-Elemente in so einem Navigation Partial in
> unterschiedlichen Sections (MainNavigation, FooterNavigation...)
>
> VG;
> Cedric
>
> Zitat von Philipp Holdener <philipp.holdener at me.com>:
>
>> Hallo Cedric
>>
>>> +1 für die Benutzung von Sections und Partials (und Sections in
>>> Partials!)
>>
>> Fühl mich davon überfordert :(
>> Hab noch kein Tutorial gefunden das mir das einfach erklärt.
>> Wie gesagt - hab erst gerade mit Fluid gestartet.
>>
>> Gruss
>> Philipp
>> _______________________________________________
>> TYPO3-german mailing list
>>
> TYPO3-german at lists.typo3.orghttp://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>



More information about the TYPO3-german mailing list