[TYPO3-german] Fluid Templating

bernd wilke t3ng at bernd-wilke.net
Tue Oct 28 09:13:10 CET 2014


Am 27.10.14 21:58, schrieb Michael G.:
> Hallo zusammen,
>
>
>
> ich bin gerade bei der Umstellung meines Webauftritts und frage mich gerade,
 > ob ich auch hinsichtlich der Templating-Methode einen neuen Weg gehen 
sollte.
 > Bisher habe ich mit ###MARKER### und ###SUBPART### gearbeitet. Das 
scheint ja
 > augenscheinlich auch noch zu funktionieren.
>
>
>
> Aber was ist mit BackendLayouts und FluiodTemplate? Wie hängen diese zusammen
 > oder gibt es ggf. demnächst etwas Neues? Hab da was von Bootstrap oder
 > GridElements gehört?

einen direkten Zusammanhang gibt es nicht. den programmierst 
(eigentlich: konfigurierst) du über Typoscript in die Installation. 
Genauso wie mit Marker Templates.

Bei Fluid kannst du natürlich auch etwas Logik [1] ins Template 
verlagern, u.a. auch die Abfrage nach dem gewählten BE-Layout, das dann 
steuert welches FE-Template benutzt werden soll. Konkreter: welcher Teil 
der FE-Templates benutzt werden:

1. bestimme das aktive Layout und speichere es in eine globale 
Fluid-Variable:

page = PAGE
page {
   10 = FLUIDTEMPLATE
   10 {
     file = {$syspath}/html/f-template.html

     layoutRootPath = {$syspath}/html/
     partialRootPath = {$syspath}/html/partials/

     variables {
       layout = TEXT
       layout.field = backend_layout
       layout.ifEmpty.data = levelfield:-2, backend_layout_next_level, slide
     }
   }
}

2. jetzt kannst du im Haupttemplate gezielt eine Section und/oder ein 
Partial anspringen:

jedes Layout ist eine Sections in einem Partial:
<f:render partial="pageLayouts" section="layout-{layout}" 
arguments="{_all}" />

jedes Layout ist ein eigeness Partial:
<f:render partial="layout-{layout}" arguments="{_all}" />

jedes Layout ist eine Section im Haupttemplate:
<f:render section="layout-{layout}" arguments="{_all}" />

oder viele <f:if> um an jeder Stelle einzeln zu entscheiden in welchem 
Layout was sichtbar sein soll (siehe [1])

oder, oder, oder ...

die übliche Vielfalt bei TYPO3

> Wie ist denn hier die Einschätzung, auch hinsichtlich der Zukunftssicherheit?
 > Möchte nicht beim nächsten LTS-Update alles wieder neu bauen müssen… J

normalerweise solltest du alte Konfigurationen beibehalten können. 
Dateien werden seit 6.0 etwas anders behandelt (FAL). die alte 
Funktionalität existiert aber auch noch!
Bei der Programmierung gibt es jetzt Namespaces (aber auch hier 
funktioniert fast alles noch nach altem Muster) und includes sind 
überflüssig (ok. die _muss_ man dann entfernen)

Sauberer wird es natürlich wenn man auf die _noch_ funktionierenden 
Funktionen verzichtet und es im neuen Schema neu aufbaut.
Die Technik bei HTML und CSS und JS ist weiter gegangen (Stichwort: 
responsive). die Mode bzgl. welche Layouts gerade 'in' sind hat sich 
auch geändert. Vielleicht ist sowieso mal wieder Zeit dem Webauftritt 
einen Tapetenwechsel zu verpassen.

Was jetzt aber in allen nächsten Versionen funktionieren wird kann dir 
kaum jemand definitiv sagen.





[1] grundsätzlich kann man natürlich auch etwas mehr Logik ins Template 
packen, aber das tut der Performance und Übersichtlichkeit nicht 
unbedingt gut.

bernd
-- 
http://www.pi-phi.de/cheatsheet.html


More information about the TYPO3-german mailing list