Mittels so genannter Conditions kann man im TypoScript auf bestimmte Ereignisse reagieren und das TypoScript anders gestalten. Als erstes einfaches Bespiel wenden wir uns einem der ersten Beispiele aus der Serie “Einführung in TypoScript” zu:

1 meineSeite = PAGE
2 meineSeite.bodyTag = <body>
3 meineSeite.10 = TEXT
4 meineSeite.10.value = Hallo Welt

In diesem Bespiel wir auf einer weißen Seite “Hallo Welt” ausgegeben. Wir möchten nun “Internet Explorer” ausgeben, wenn der Besucher zum Surfen den Internet Explorer benutzt und “Mozilla” wenn er z.B. einen Firefox benutzt.

Für Conditions gibt es bestimmte “Bedingungen”, die man abfragen kann. Um den Browser des Besuchers abzufragen, benutzen wir die “Bedingung” Browser.

Das TypoScript sieht wir folgt aus:

1 meineSeite = PAGE
2 meineSeite.bodyTag = <body>
3 meineSeite.10 = TEXT
4 [browser = msie]
5 meineSeite.10.value = Internet Explorer
6 [browser = netscape]
7 meineSeite.10.value = Firefox
8 [ELSE]
9 meineSeite.10.value = Browser weder Internet Explorer noch Firefox
10 [GLOBAL]

In Zeile 4 steht die erste Condition. Wir fragen hier ab, ob der Browser des Besuchers der Internet Explorer ist. Kann diese Frage mit ja beantwortet werden, so wird die Zeile 5 ausgeführt, lautet die Antwort nein, so wird zu der nächsten Condition gesprungen.

In Zeile 6 steht die nächste Condition. Ist diese wahr, so wird die Zeile 7 ausgeführt. Ist sie nicht wahr, so wird zu der nächsten Condition gesprungen.

In Zeile 8 wird die Option [ELSE] verwendet, die bestimmt, das die Zeile 9 ausgeführt wird, wenn keine der oberen Conditions zutrifft.

In Zeile 10 steht noch eine Besonderheit, die man immer am Ende einer Condition einfügen sollte. Durch [GLOBAL] werden alle vorherigen Conditions “aufgehoben”.

Conditions können mit einem “UND” oder “ODER” verknüpft werden, wobei ein “UND” immer Priorität hat. Ich könnte also mit eine Condition auch Kombinationen von Bedingungen abfragen:

3 meineSeite.10 = TEXT
4 [browser = msie] AND [version > 5]
5 meineSeite.10.value = Internet Explorer größer 5

Wir fragen in Zeile 4 ab, ob es sich um einen Internet Explorer in der Version größer 5 handelt.

Oft werden Conditions benutzt, um Werte übergebener URL-Parameter abzufragen. Weiterhin ist es möglich, Umgebungsvariablen abzufragen. Dies ist z.B. sinnvoll um “baseURL” zusetzen, wenn der Auftritt unter verschieden Domänen erreichbar ist (z.B. zum testen).

Interessant ist sicherlich noch, dass man sich eine Condition auch selber programmieren kann. Dazu kann man eine PHP Funktion erstellten, die “richtig” oder “falsch” zurückliefert um diese dann als Condition zu benutzen.

Weitere Tipps und Tutorials rund um TYPO3 findet Ihr auf der Tutorial-Seite.

Popularity: 8%