Inhalte aus den Spalten LINKS, NORMAL, RECHTS, RAND ausgeben
Wenn Sie im Backend alle vier Inhalts-Spalten nutzen wollen, müssen Sie im TypoScript definieren, wo die Datensätze der einzelnen Spalten im Frontend ausgegeben werden sollen.
Nehmen wir an, Sie haben einen Inhaltselement in der Normal-Spalte. Ein weiteres Text-Seitenelement ist in der Randspalte. Mithilfe von phpMyAdmin können Sie auch selbst überprüfen, worin sich diese beiden Datensätze unterscheiden: Der 1. Text hat in der Spalte colPos den Wert 0, der 2. Text hat den Wert 3.
Hier die komplette Liste:
Spalte | colPos-Wert |
Links | 1 |
Normal | 0 |
Rechts | 2 |
Rand | 3 |
Aber wie kann der Inhalt ausgegeben werden?
Angenommen, Sie hätten ein Layout in folgender Art:
Beispiel: designvorlage.tmpl
Wie spricht man die Marker an?
Die Marker ###INHALT_NORMAL### und ###INHALT_RAND### müssen nun von TYPO3 ersetzt werden. TYPO3 muss nun folgendes von Ihnen "erklärt" bekommen:
- Aus welcher Tabelle sollen die Daten kommen?
- Welche Spalte des Backends soll gezeigt werden?
- In welcher Reihenfolge sollen die Daten ausgegeben werden?
- Falls die Webseite mehrsprachig ist: Welche Sprache soll ausgegen werden?
Die Definition dieser Ausgabe geschieht im TypoScript-Setup:
TypoScrip-Setup:
page { typeNum = 0 10 { template = TEXT template.file = fileadmin/templates/designvorlage.tmpl workOnSubpart = SCREEN marks { INHALT_NORMAL = CONTENT INHALT_NORMAL { table = tt_content select { where = colPos = 0 orderBy = sorting languageField = sys_language_uid } } INHALT_RAND = CONTENT INHALT_RAND { table = tt_content select { where = colPos = 3 orderBy = sorting languageField = sys_language_uid } } } } }
In den Zeilen 1-3 wird die Seite 'page' mit einer zwingend anzugebenden typeNum definiert.
In Zeile 4 wird an Position 10 der Seite (hier die einzige Position) ein Template ausgegeben. Dieses Template kommt aus einer Datei, die wir vorher z.B. im Fileadmin im Ordner templates angelegt haben (Zeile 7).
Damit Sie z.B. in der Datei designvorlage.tmpl sowohl das Layout der Website sowie ein weiteres Template für eine Druckansicht speichern können, bietet TYPO3 die Möglichkeit, einen Bereich aus dem Template zu extrahieren (Zeile 8).
Ein Template kann nun Marker enthalten. Diese haben in der Designvorlage immer drei '#' vor und hinter dem in Großbuchstaben geschriebenen Markernamen. In TypoScript werden diese Marker dann allerdings ohne die '#' angegeben.
Wie Sie sehen können, sind die Abschnitte INHALT_NORMAL und INHALT_RAND bis auf den Wert von colPos völlig gleich.