TypoScript Condition

Mit der "globalVar" Condition/Bedingung läßt sich z.B. ganz einfach der GET Parameter "tx_extension[var]" einer Extension/Erweiterung abfragen. Je nach dem, welche Variable geliefert wird, kann dann weiter verfahren werden.

// Default PAGE object
page = PAGE

// Typolinks zum Testen des GET Parameter erzeugen
page.30 = COA
page.30 {
  10 = TEXT
  10 {
    value = Variable gleich 0
    wrap = |<br>
    typolink {
      parameter.data = TSFE:id
      additionalParams = &tx_extension[var]=0
    }
  }
  20 < .10
  20.value = Variable größer 0
  20.typolink.additionalParams = &tx_extension[var]=20
  30 < .10
  30.value = Variable leer
  30.typolink.additionalParams = &tx_extension[var]=
  40 < .10
  40.value = Variable nicht leer
  40.typolink.additionalParams = &tx_extension[var]=1
}

// Ausgabe falls die übermittelte Variable gleich 0
[globalVar = GP:tx_extension|var = 0]
page.40 = COA
page.40 {
  20 = TEXT
  20 {
    data = GP:tx_extension|var
    noTrimWrap = |<br>Parameter: ||
  }
}
[global]

// Ausgabe wenn die übermittelte Variable größer 10
[globalVar = GP:tx_extension|var > 10]
page.40 = COA
page.40 {
  20 = TEXT
  20 {
    data = GP:tx_extension|var
    noTrimWrap = |<br>Parameter: ||
  }
}
[global]

// Ausgabe wenn die übermittelte Variable leer ist
[globalVar = GP:tx_extension|var =]
page.40 = COA
page.40 {
  20 = TEXT
  20 {
    data = GP:tx_extension|var
    noTrimWrap = |<br>Parameter: |leer|
  }
}
[global]

// Ausgabe wenn die übermittelte Variable nicht gleich 0
[globalVar = GP:tx_extension|var != 0]
page.40 = COA
page.40 {
  20 = TEXT
  20 {
    data = GP:tx_extension|var
    noTrimWrap = |<br>Parameter: ||
  }
}
[global]

TYPO3 Conditions stehen in eckigen Klammern und werden nach der Einleitung [...] mit einem [global] oder [end] abgeschlossen. Im folgenden, werden auch die Operatoren erklärt, die zur Prüfung einer Bedingung verwendet werden können.

Operatoren

Vergleichsoperatoren für eine Prüfung von Bedingungen:

=  Variable gleich Wert
<  Variable kleiner als Wert
>  Variable größer als Wert
<= Variable kleiner oder gleich Wert
>= Variable größer oder gleich Wert
!= Variable ungleich Wert

Durch den Einsatz von Operatoren, lassen sich viele Vergleichsmöglichkeiten erzielen.

Weiter Bedingungen

Ausgabe wenn es sich um die Seite mit der ID 5 handelt oder eine Bedingung für gleich mehreren Seiten.

[globalVar = TSFE:id = 5]
// Mach was auf Seite mit der Page ID 5...
[global]

[globalVar = TSFE:id = 10|30|35]
// Mach was auf den Seiten mit der Page ID 10, 30 und 35...
[global]

Bedingungen kombinieren

// Bedingungen durch Komma trennen
[globalVar = TSFE:id = 5, GP:tx_extension|var = 0]
// Mach was, wenn Seite gleich ID 5
// und Wert der Variable von Extension "tx_extension" = 0
[global]

// Auswertung falls Condition gleich false, also nicht wahr
[globalVar = GP:tx_extension|var = 0]
// Mach was, wenn Wert der Variable von Extension "tx_extension" = 0
[else]
// Das kommt, wenn Wert der Variable von Extension "tx_extension" nicht Null ist
[global]

Komplette Liste an Informationen zur TYPO3 Bedingung globalVar auf der Seite Condition reference.