Conditional comments in TypoScript

Conditions werden in Typo3 für eingeschränkte Codeblöcke verwendet. Sie können einfach als If-Else-Konstrukte verstanden werden. So gut wie in jeder Typo3 Installation gibt es Spezialanforderungen die mit einer einzigen Typo3 Condition gelöst werden können. Ein Extension Template wird durch diese „Bedingungen“ meistens überflüssig.

Syntax

[browser = msie]
# Beliebiges TypoScript, dass ausgeführt wird, wenn der User mit dem
# Internet Explorer auf die Seite surft
[global]
[browser = msie] || [browser = netscape] && [version => 4]
# Typoscript wird nur bei Internet Explorer oder Netscape größer
# Version 4 ausgeführt
[end]

Der erste Block definiert das „IF„, in der mitte steht das TypoScript und mit [global] oder [end] wird die Typo3 Condition aufgehoben.

IF NOT, If !, Negierung

In den T3 Condtions kann nicht negiert werden. Mit einem Trick geht das aber leicht von der Hand:

[PIDinRootline=8]
# mach einfach nichts, wenn die angesurfte Seite sich im Seitenbaum
# unterhalb von PID 8 befindet
[else]
# wenn die angesurfte Seite sich NICHT im Seitenbaum unterhalb von
# PID 8 befindet
[end]

Page in Rootline

Ob sich eine Seite in einem gewissen Seitenbaum befindet kann man mit der T3 Condition [PIDinRootline=8,9] prüfen. PID ist dabei die Seiten ID. Die Seiten Id sieht man, wenn man sich mit der Maus über eine Seite im Seitenbaum stellt. (Hover Title).

Durch Kommatrennung können mehrere Seiten IDs angegeben werden.

Current Site

Ob sich der User auf einer bestimmten Seite befindet kann mit der Typo3 Condition [globalVar = TSFE:id = 5] geprüft werden.

Language Conditions

Die Sprache kann mit [globalVar = GP:L = 0] überprüft werden, wobei die ID der Sprache in der Listenansicht der Rootseite (ID 0) abgelesen werden kann.

Kombination

Als kombinatorische Operatoren können

  • && oder AND
  • || (zwei Pipes) oder OR

verwendet werden.

Wenn kein Operator definiert wird, wird der OR-Operator verwendet.

Quelle

Alle Möglichkeiten von Typo3 (T3) Conditions können auf Typo3.org nachgelesen werden.
Ebenfalls eine ausführliche Doku gibt es auf Typo3.net.

Sei sozial und teile

Über den Autor Andreas Grundner

Ich bin Wordpress, Joomla, Typo3 Integrator, Unix Rootserver Administrator und Webanwendungsprogrammierer. Mittlerweile habe ich über 70 Webprojekte weitgehend selbstständig mit enger Kundenabsprache realisiert. Ich bin auf One Page Websites auf Wordpress-Basis spezialisiert, biete aber auch Suchmaschinenoptimierung (SEO), Blogs, Facebook, Youtube und Google+ Seiten an. Meine Verpflichtung gilt dem Datenschutz, meine Leidenschaft dem Finden und Aufzeigen von Sicherheitslücken in Webanwendungen.

Eine Reaktion zu Conditional comments in TypoScript

  1. Jpsy
    04.12.2014 at 14:35 · Antworten

    Der richtige Weg, Conditional Comments in TYPO3 einzubinden, sieht so aus:

    includeCSS {
    file1 = fileadmin/mystylesheet1.css
    ie6Style = fileadmin/css/style3.css
    ie6Style.allWrap =
    }

    Siehe http://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Page/Index.html

Meinung sagen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.