Die if
-Anweisung wird durch die conditional-Erweiterung bereitgestellt.
Mit dieser Anweisung kann die Anzeige von Text an bestimmte Bedingungen geknüpft werden. Zum Beispiel:
[[!if test="enabled(smiley)"
then="Die smiley-Erweiterung ist aktiviert :-)"
else="Hier gibt es keine smiley-Erweiterung …"]]
Wenn der angegebene test
erfolgreich ist, wird der then
-Text angezeigt,
sonst der else
-Text. Der else
-Teil ist optional.
Die Werte für then
und else
können beliebige Formatierungsanweisungen
enthalten, die außerhalb der Anweisung erlaubt wären. Werten die Werte durch
dreifache Anführungszeichen abgetrennt, können sie sogar Anführungszeichen
enthalten.
Der test
ist eine PageSpec; wenn sie auf irgendeine Seite im
Wiki passt, hat der Test Erfolg. Dadurch kann man die Existenz einer oder
mehrerer Seiten überprüfen, überprüfen ob in einem bestimmten Monat Seiten
angelegt wurden, und so weiter.
Wenn die PageSpec nur auf die aktuelle Seite angewendet werden
soll, die die Bedingung enthält (und nicht auf alle Seiten im Wiki), kann
der optionale all
-Parameter auf no
gesetzt werden.
In einer if
-Anweisung sind neben der regulären PageSpec-Syntax
die folgenden zusätzlichen Test verfügbar:
enabled(plugin)
Prüft, ob die angegebene Erweiterung aktiviert ist.
sourcepage(glob)
Prüft, ob das angegebene Muster auf den Namen der Seite passt, die die Bedingung enthält.
destpage(glob)
Prüft, ob das Muster auf den namen der Seite passt, die gerade erzeugt wird. Dies kann ein anderer Name sein als der der Seite, die die Bedingung enthält, wenn diese über inline in eine andere Seite eingebunden wird.
included()
Tests whether the page is being included onto another page, for example via inline or map. Note that pages inserted into other pages via template are not matched here.