Zum Inhalt springen

Seiten(inhalte) auf anderen Seiten einbinden

Erstellt am 15. April 2015 · 1 Antwort · letzte Antwort am 15. April 2015

Tags: Templates & Layouts, TYPO3 6.x, Frage

mimii ·

Hallo ins Forum,

ich stehe vor folgender Aufgabenstellung: Auf jeder Seite gibt es einen Teaserberich, der im fluid-Layout-Template definiert ist. Auf einigen Seiten soll jedoch nicht der allgemeine Standardteaser stehen, sondern ein zum Inhalt der Seite passender Teaser erscheinen.

Nun habe ich mir für diese speziellen Seiten jeweils eine Unterseite angelegt, auf der ich den passenden Teaser erfasse. Per TS bzw. Condtions lade ich dann zur Seite die jeweilige Unerseite.

Im root-Template steht:

teaser =< lib.textTeaser

Die lib.textTeaser sieht so aus:

# Standardteaser für alle "normalen" Seiten
Die lib.textTeaser sieht so aus:
lib.textTeaser = CONTENT
lib.textTeaser {
  table = tt_content
  select {
    pidInList = 10
    orderBy = sorting
    where = colPos= 0
   }
}
# Seite 5 hat speziellen Teaser von Seite 15
[globalVar = TSFE:id=5]
lib.textTeaser = CONTENT
lib.textTeaser {
  table = tt_content
  select {
    pidInList = 15
    orderBy = sorting
    where = colPos= 0
   }
}
[global]

# Seite 7 hat speziellen Teaser von Seite 16
[globalVar = TSFE:id=7]
lib.textTeaser = CONTENT
lib.textTeaser {
  table = tt_content
  select {
    pidInList = 16
    orderBy = sorting
    where = colPos= 0
   }
}
[global]

Leider geht es wie im Beispiel oben nicht nur um zwei Seiten, sondern um mehrere. Also müsste ich für jede Seite mit einem eigenen Teaser jeweils eine Condition machen. Das erscheint mir doch sehr umständlich. Zudem wird später ein Redakteur das nicht pflegen können, falls neue Seite hinzukommen (er müsste dann immer ne neue Condition hinzufügen).

Wie kann man sowas geschickter bzw. effizienter lösen?

Danke für n Tipp und Gruß
mimii

toifel · · Beste Antwort

Einfacher wäre es, wenn du für die Teaser eine eigene Spalte in deinem Backend-Layout definierst. Dann musst du nur abfragen, ob colPos X leer ist (if.isTrue.numRows).

Mit deinem aktuellen Aufbau müsstest du immer zuerst prüfen, ob überhaupt eine Unterseite existiert.
Zudem wäre es dann ja praktisch nicht mehr für den Redakteur möglich, eigene Unterseiten zu erstellen, da das System daraus automatisch Teaser generieren würde.