Variable mit Bedingung testen

Mit diesem TypoScript kann man eine Bedingung erzeugen, die nur bestimmte Variablenwerte akzeptiert.

In bestimmten Fällen möchte man Inhalte abhängig von einer Bedingung anzeigen oder verbergen. Hierzu bietet sich als einfache Möglichkeit die Verwendung von so genannten Flags an, d.h. Variablen, die entweder den Wert 0 (aus) oder 1 (an) haben.

Nehmen wir an, Sie möchten einen Text nur dann ausgeben, wenn die Variable show_content gesetzt wurde, d.h. wenn sie den Wert 1 bzw. einen Wert größer 0 (Null) hat. Im CONSTANTS Feld Ihres TypoScript-Templates definieren Sie zu diesem Zweck die entsprechende Variable und setzen sie auf einen Standardwert (hier: 1).

Variable definieren TypoScript, Bereich CONSTANTS
# Variable 'show_content' auf Standardwert 1 setzen
show_content = 1
Variable in Bedingung abfragen TypoScript, Bereich SETUP
temp.ein_text = TEXT
[globalVar = LIT:0<{$show_content}]
# Text zuweisen, wenn Bedingung wahr ist
temp.ein_text.value = Die Variable ist größer als Null!
[else]
# Text-Objekt leeren, wenn Bedingung falsch ist
temp.ein_text >
[global]

Die Bedingung fragt ab, ob unsere Variable show_content größer ist als der (literale, LIT in TypoScript) Wert 0 (Null). Trifft diese Bedingung zu — in unserem Beispiel der Standardfall — wird das Textobjekt mit Inhalt gefüllt, im anderen Fall tritt der else Fall in Kraft und das Textobjekt wird geleert.

Denken Sie daran, dass solche Bedingungen generell ausserhalb von Anweisungsblöcken (d.h. ausserhalb von geschweiften Klammern) stehen müssen.

Lesen Sie auch unseren Best Practice-Artikel zu Konstanten in TypoScript.