[TYPO3-german] Verständnisfrage ifEmpty.cObject

Martin Holtz typo3 at martinholtz.de
Wed Aug 8 20:33:46 CEST 2007


Hi Michael,

> Der Inhalt meiner linken Spalte wird standardmäßig aus einer einzelnen
> Seite für die ganze Website ausgelesen.
> Jetzt möchte ich eine Möglichkeit haben, dass  ich für einzelne Seiten
> dieses überschreibe. Eine Vererbung wäre uninteressant, da unterhalb der
> Seiten wieder automatisch der Standard greifen soll.
> 
> Dieses TS habe ich mir gebaut:
> 
> +++ snip +++
> LINKS < lib.content_left
> +++ snip +++
> 
> lib.content_left = COA
> lib.content_left {
> 10 < styles.content.get
> 10 {
> table = tt_content
> select.where = colPos = 1
> select.orderBy = sorting
> }
> 10.stdWrap.ifEmpty.cObject = CONTENT
> 10.stdWrap.ifEmpty.cObject {
> table = tt_content
> select.pidInList = 5
> select.where = colPos = 1
> select.orderBy = sorting
> }
> }
> 
> Es sieht eigentlich so aus, dass die Mehrzahl der Seiten den
> Standardinhalt (pidInList = 5) nutzen wird.
> Meine Frage daher:
> Ist es vielleicht sinnvoller, die Sache anders herum aufzuziehen?
> Wenn ja, wie?
Naja, via Condition oder mit if.
10.stdWrap.if.value = 12,33,44
10.stdWrap.if.value.isInList.data = TSFE:id
# vorsicht, syntax nochmal prüfen..

Und dann nen zweite Abfrage mit
20.stdWrap.if.value = 12,33,44
20.stdWrap.if.value.isInList.data = TSFE:id
20.stdWrap.if.value.negate = 1

12,33,44 packst du sinnvoller Weise dann in eine Konstante.

Aber ich denke eigentlich ist der sauberste Weg der, den Du gewählt hast.
Denn dann wird auf allen Seiten, wo nichts in der Spalte steht, der
Default-Inhalt gelesen.

Mag sein, dass es für den Server ein wenig aufwändiger ist (zusätzliche
SQL-Abfrage) aber das sollte nicht ins Gewicht fallen.

Denn sonst musst Du immer explizit die Seiten benennen auf denen das anders
gehandhabt werden soll und das ist Fehleranfällig und aufwändig.

meine Gedanken so auf die schnelle.

gruß,
martin


More information about the TYPO3-german mailing list