TYPO3 - Backend Layouts
Einführung[Bearbeiten]
Besser als die Standard Spaltenansicht sind Backend layouts Ab TYPO3 7.4 kann man diese auch in Distributionen mitgeben.
Quickstart[Bearbeiten]
Backendlayout erzeugen und zuweisen[Bearbeiten]
- Sinnvollerweise einen BackendLayout Ordner erzeugen
- Listenansicht Backend Layout Datensatz erzeugen. Hinweis die colPos Spalten teilen sich Backendlayouts, die normalen Spalten und Gridelements. Das bedeutet, wenn man die Standardspalten nimmt kann man in den meisten Fällen die Standardtemplates die man schon hat benutzen.
- Backend Layout In den Seiteneigenschaften zuweisen
Beispiele[Bearbeiten]
Beispiel - Backendlayout steuert Auswahl des Fluid Templates[Bearbeiten]
Wir gehen von einer page Definition aus, die etwa so aussieht:
# Variablen
page.10.variables {
# content via css-styled-content oder fluid_styled_content
contentNormal < styles.content.get
# Zuordnung der weiteren Backenlayout Boxen zu den Template Variablen
contentLeft < styles.content.get
contentLeft.select.where = colPos=1
contentMiddle < styles.content.get
contentMiddle.select.where = colPos=2
contentRight < styles.content.get
contentRight.select.where = colPos=3
}
Auswahl des Backendlayouts soll unterschiedliche Layout Dateien verwenden.
Wir nutzen ein CASE Objekt um die Auswahl des Backendlayouts auszuwerten. In key.data wird mit backend_layout_net_level das Backend Layout Feld für die nächsten Level (siehe Backend Seiteneigenschaften) definiert. -1 und slide sorgen dafür, daß im Seitenbaum in der nächst höheren Ebene geschaut wird wenn auf der aktuellen Ebene nichts gefunden wird. Wenn in backend_layout etwas gefunden wird, dann überschreibt dieser Wert die vorige Definition aus dem backend_layout_net_level Feld.
page.10.file.stdWrap.cObject = CASE
page.10.file.stdWrap.cObject{
key.data = levelfield:-1, backend_layout_net_level, slide
key.override.field = backend_layout
# Default Template wenn nichts definiert ist
default = TEXT
default.value = {$resourceDir}/Private/Templates/Default.html
# Backendlayout ids zu Templates zuordnen
1 < .default
#2 = TEXT
#2.value = {$resourceDir}/Private/Templates/Layout2.html
#...
}
Fluid Template ergänzen
<f:layout name="Default"/><!-- Default Layout verwenden -->
<f:section name="Main">
<f:format.raw>{contentNormal}</f:format.raw>
<f:format.raw>{contentLeft}</f:format.raw>
<f:format.raw>{contentMiddle}</f:format.raw>
<f:format.raw>{contentRight}</f:format.raw>
</f:section>
Backend Layout in Dateien auslagern[Bearbeiten]
Ab Typo3 v 7.4 möglich https://vimeo.com/135548508