Hülp:Vorlagenprogrammierung
Vörlaag:Shortcut Vörlaag:Diese Seite Vörlaag:Hilfe Seit Mitte April 2006 verfügt die Wiki-Syntax der MediaWiki-Software über verschiedene Konstrukte einer Programmiersprache für die Verwendung in Vorlagen. Voraussetzung ist die Extension ParserFunctions.
Die Sprachkonstrukte sollten ausschließlich im Vorlagen-Namensraum verwendet und wohlüberlegt eingesetzt werden. Nicht jede Spielerei, die möglich ist, ist auch sinnvoll. Programmierkonstrukte, die nicht ausreichend dokumentiert sind, werden wieder gelöscht.
Bei Problemen und Fragen zur Vorlagenprogrammierung hilft die Werkstatt des Wikiprojekts Vorlagen weiter. Bitte beachte, dass du für das Verständnis dieser Seite vorher Hilfe:Vorlagen lesen solltest.
Grundfunktionen
[ännern]Auch die Grundfunktionalität der Mediawiki-Software – ohne die Extension ParserFunctions – bringt bereits einen Satz von Parserfunktionen mit sich. Diese werden separat unter Hilfe:Variablen#Funktionen beschrieben.
Beschreibung der ParserFunctions
[ännern]Vörlaag:Anker Funktion if
[ännern]Die if
-Funktion ist ein Wenn-Dann-Sonst-Konstrukt.
{{#if: <Bedingung> | <Dann-Text> | <Sonst-Text> }}
Enthält die <Bedingung>
Text, gilt sie als erfüllt und es wird <Dann-Text>
zurückgegeben. Ist <Bedingung>
hingegen leer oder besteht ausschließlich aus Leerraum, gilt sie als nicht erfüllt und es wird <Sonst-Text>
zurückgegeben. Sowohl <Dann->
als auch <Sonst-Text>
können auch leer bzw. weggelassen werden, dann wird im jeweiligen Fall nichts zurückgegeben.
In der <Bedingung>
ist darauf zu achten, Parameter immer in der Form {{{Parameter|}}}
zu benutzen, also mit Angabe eines leeren Standardwerts nach dem senkrechten Strich. Andernfalls werden nicht referenzierte, das heißt beim Ausfüllen der Vorlage weggelassene Parameter nicht aufgelöst, als Wert bleibt „{{{Parameter}}}“ stehen und die Bedingung gilt fälschlich als erfüllt.
Eine Angabe wie
{{#if: {{{Was|}}} | <Dann-Text> | <Sonst-Text> }}
deklariert also {{{Was}}} zu einem sogenannten logischen Parameter. Ist er leer, entspricht das logisch falsch (false), ist er nicht leer, dann logisch wahr (true).
Aus demselben Grund ist {{{Parameter|Standardwert}}}
kein gleichlautender Ersatz für {{#if: {{{Parameter|}}} | {{{Parameter}}} | Standardwert }}
. Im ersten Fall wird der Standardwert nur sichtbar, wenn der Parameter beim Ausfüllen der Vorlage ganz weggelassen wurde, nicht jedoch, wenn er vorhanden, aber leer ist. Das if
behandelt beide Fälle gleich.
Für das Ausblenden von Tabellenzeilen und auf Tabellen basierenden Infoboxen ist Folgendes empfehlenswert. Eine immer sichtbare Tabellenzeile hat etwa folgenden Aufbau:
|- | Gewicht: || {{{Gewicht|}}}
Um die Tabellenzeile auszublenden, wenn kein Wert angegeben wurde, wird sie wie folgt in ein if
eingefasst:
|- {{#if: {{{Gewicht|}}} | {{!}} Gewicht: {{!!}} {{{Gewicht}}} }}
Erläuterungen:
- Innerhalb des
if
darf das Zeichen|
nicht anderweitig verwendet werden, da es sonst als<Dann-Text>
interpretiert werden würde. Daher müssen die für die Tabelle notwendigen|
als{{!}}
oder doppelt als{{!!}}
maskiert werden. - Die Tabellensyntax erzeugt für mehrere aufeinander folgende
|-
keine leeren Tabellenzeilen. Deshalb ist es empfehlenswert, das|-
außerhalb desif
zu belassen, da es dann nicht maskiert werden muss.
Achtung: if
unterstützt keine Gleichungen oder Ähnliches. Siehe dafür ifeq
und ifexpr
.
Vörlaag:Anker Funktion ifeq
[ännern]ifeq
vergleicht zwei Zeichenketten und gibt je nach Ergebnis verschiedene Texte zurück.
{{#ifeq: <Text 1> | <Text 2> | <Text, wenn gleich> | <Text, wenn ungleich> }}
Vörlaag:Anker Funktion ifexist
[ännern]ifexist
prüft, ob ein angegebenes Lemma existiert, und gibt je nachdem verschiedene Texte zurück.
{{#ifexist: <Lemma ohne eckige Klammern> | <Text, wenn Lemma existiert> | <Text, wenn Lemma nicht existiert> }}
Dabei darf die Gesamtzahl der ifexist
auf einer Seite nicht die Grenze von 500 übersteigen, wobei es egal ist, ob sie eingebunden werden oder nicht. Weitere Einbindungen von ifexist
werden stets so behandelt, als würde die angegebene Seite nicht existieren. Zusätzlich erscheint eine Warnung und die Seiten werden kategorisiert.
Die Überprüfung mittels #ifexist:
erzeugt intern einen Link zum überprüften Lemma, dieser taucht dann in dessen Linkliste auf. Wenn das Lemma nicht existiert wird es in Gewünschte Seiten eingefügt beziehungsweise dessen Zähler erhöht (Vörlaag:Phab). Bei Dateien mit Namensraum „Media“ wird eine Verwendung angezeigt. Diese Problematik kann nicht umgangen werden.
Interwiki-Links werden nicht geprüft. Es wird immer angenommen, dass Lemmata in anderen Wikis nicht existieren.
Die Existenz von Abschnitten oder Ankern kann mit dieser Funktion nicht geprüft werden.
Die Parserfunktion prüft bei Bildern mit Namensraum „Datei“, „File“, „Bild“ oder „Image“ auf Existenz einer Dateibeschreibungsseite im lokalen Projekt, bei Angabe von „Media“ auf physikalische Existenz der Datei, auch über das lokale Projekt hinweg auf Commons.
Um bei einer Datei festzustellen, ob sie von Commons eingebunden wird, kann die Vorlage:IsCommons benutzt werden.
Vörlaag:Anker Funktion expr
[ännern]expr
berechnet mathematische Ausdrücke.
{{ #expr: <ausdruck> }}
Operator | Operation | Beispiel |
---|---|---|
Algebraische Operationen | ||
+ | Addition | {{#expr: 30 + 7 }} = 37 |
− | Subtraktion (oder Negation) | {{#expr: 30 - 7 }} = 23 |
* | Multiplikation | {{#expr: 30 * 7 }} = 210 |
/ oder div | Division | {{#expr: 30 / 7 }} = 4.2857142857143 |
^ | Potenz . Achtung: Beim zweifachen Potenzieren sollten Klammern angegeben werden. Die Potenzen werden von der Software linksassoziativ ausgeführt: 2 ^ 2 ^ 2 = (2 ^ 2) ^ 2. Mit der Beziehung kann man auch radizieren. | {{#expr: 2 ^ 8 }} = 256 |
sqrt | Quadratwurzel | {{#expr: sqrt 16 }} = 4 |
mod | Modulo, der Rest einer Division von Ganzzahlen | {{#expr: 30.4 mod 7.2 }} = 2 |
fmod | Modulo, der Fließkommarest einer Division von Fließkommazahlen | {{#expr: 30.4 fmod 7.2 }} = 1.6 |
exp | Exponentialfunktion () | {{#expr: exp 5 }} = 148.41315910258 |
ln | Der natürliche Logarithmus einer Zahl. Zur Umrechnung in andere Logarithmen siehe Basisumrechnung. | {{#expr: ln exp 3 }} = 3 |
abs | Betragsfunktion | {{#expr: abs -1.2 }} = 1.2 {{#expr: abs 1.2 }} = 1.2 |
Runden | ||
round | Rundet die Zahl auf der linken Seite auf die Anzahl Nachkommastellen, die von der Zahl auf der rechten Seite angegeben wird (kaufmännische Rundung) | {{#expr: 30 / 7 round 7 }} = 4.2857143 |
trunc | Rundet eine Zahl in Richtung Null auf die nächste Ganzzahl, d. h. negative Zahlen werden aufgerundet und positive Zahlen werden abgerundet | {{#expr: trunc -1.2 }} = -1 {{#expr: trunc 1.2 }} = 1 |
floor | Abrunden auf die nächste Ganzzahl | {{#expr: floor -1.2 }} = -2 {{#expr: floor 1.2 }} = 1 |
ceil | Aufrunden auf die nächste Ganzzahl | {{#expr: ceil -1.2 }} = -1 {{#expr: ceil 1.2 }} = 2 |
Konstanten und trigonometrische Operatoren | ||
e | Die Eulersche Zahl e | {{#expr: e }} = 2.718281828459 |
pi | Die Kreiszahl | {{#expr: pi }} = 3.1415926535898 |
sin | Berechnet den Sinus einer Zahl in Bogenmaß | {{#expr: sin 3.14 }} = 0.0015926529164868 |
cos | Berechnet den Kosinus (engl. cosine) einer Zahl in Bogenmaß | {{#expr: cos pi }} = -1 |
tan | Berechnet den Tangens einer Zahl in Bogenmaß | {{#expr: tan 1 }} = 1.5574077246549 |
asin | Berechnet den Arkussinus | {{#expr: asin 0.5 }} = 0.5235987755983 |
acos | Berechnet den Arkuskosinus | {{#expr: acos 0 }} = 1.5707963267949 |
atan | Berechnet den Arkustangens | {{#expr: atan 1.4 }} = 0.95054684081208 |
Vergleichsoperatoren | ||
= | Gleichheit | {{#expr: 30 = 7 }} = 0 |
<> oder != | Ungleichheit | {{#expr: 30 <> 7 }} = 1 |
< | Kleiner als | {{#expr: 30 < 7 }} = 0 |
> | Größer als | {{#expr: 30 > 7 }} = 1 |
<= | Kleiner oder gleich | {{#expr: 30 <= 7 }} = 0 |
>= | Größer oder gleich | {{#expr: 30 >= 7 }} = 1 |
Logische Operatoren | ||
and | Logisches UND | {{#expr: 30 and 7 }} = 1 {{#expr: 30 and 0 }} = 0 |
or | Logisches ODER | {{#expr: 30 or 7 }} = 1 {{#expr: 30 or 0 }} = 1 |
not | Logisches NICHT | {{#expr: not 7 }} = 0 {{#expr: not 0 }} = 1 |
Syntax | ||
#.#e±# | Statt eines Kommas muss der Punkt zur Trennung der Nachkommastellen benutzt werden. Zahlengruppierungen (im deutschen meist der Punkt) sind nicht möglich. Zahlen können in der wissenschaftlichen Notation übergeben werden. Für positive Exponenten ist das Plus optional. | {{#expr: 0.7e4 }} = 7000 |
( ) | Gruppierung/Klammerung | {{#expr: (30 + 7) * 7 }} = 259 |
Hyperbolische, andere trigonometrische, Arkus- und Areafunktionen müssen mit Hilfe der entsprechenden Definitionen und Umrechnungen realisiert werden:
Funktion | Quelltext |
---|---|
Sinus Hyperbolicus (sinh) | {{#expr: ((exp {{{x}}} - exp (-1*{{{x}}}))/ 2)}}
|
Kosinus Hyperbolicus (cosh) | {{#expr: ((exp {{{x}}} + exp (-1*{{{x}}}))/ 2)}}
|
Tangens Hyperbolicus (cosh) | {{#expr: ((exp {{{x}}} - exp (-1*{{{x}}})) / (exp {{{x}}} + exp(-1*{{{x}}}))) }}
|
Kotangens Hyperbolicus (coth) | {{#expr: ((exp {{{x}}} + exp (-1*{{{x}}})) / (exp {{{x}}} - exp(-1*{{{x}}}))) }}
|
Sekans Hyperbolicus (sech) | {{#expr: (2 / (exp {{{x}}} + exp (-1*{{{x}}}))) }}
|
Kosekans Hyperbolicus (sech) | {{#expr: (2 / (exp {{{x}}} - exp (-1*{{{x}}}))) }}
|
Areasinus Hyperbolicus (arsinh) | {{#expr: ln ({{{x}}} + (({{{x}}})*({{{x}}}) - 1)^0.5) }}
|
Areakosinus Hyperbolicus (arcosh) | {{#expr: ln ({{{x}}} + (({{{x}}})*({{{x}}}) + 1)^0.5) }}
|
Areatangens Hyperbolicus (artanh) | {{#expr: ln ((1+ {{{x}}})/(1- {{{x}}})) / 2 }}
|
Areakotangens Hyperbolicus (arcoth) | {{#expr: ln (({{{x}}} +1)/({{{x}}} -1)) / 2 }}
|
Areasekans Hyperbolicus (arsech) | {{#expr: ln ((1 + (1 - ({{{x}}})* {{{x}}})^0.5)/ {{{x}}}) }}
|
Areakosekans Hyperbolicus (arcsch) | {{#expr: ln ((1 + (1 + ({{{x}}})* {{{x}}})^0.5)/ {{{x}}}) }}
|
Die booleschen Operatoren behandeln 0 (Null) als falsch und 1 als wahr. Zahlen werden mit dem Punkt als Dezimaltrenner angegeben.
Beispiel:
{{ #expr: (100 - 32) / 9 * 5 round 0 }}
ergibt:
38
Damit werden 100 Fahrenheit auf die Celsius-Skala umgerechnet (auf die nächste Ganze Zahl gerundet).
Da diese Berechnungen aus Kompatibilitätsgründen mit dem englischen Zahlenformat durchgeführt werden (Beispiel: {{ #expr: 13000 / 3.1 round 2 }}
ergibt 4193.55) müssen solche Zahlen zusätzlich in das im deutschen Sprachraum übliche Format umgewandelt werden (Beispiel: {{
formatnum: {{ #expr: 13000 / 3.1 round 2 }} }}
ergibt 4.193,55).
Arithmetische Ausdrücke können auf Spezial:Vorlagen expandieren getestet werden.
Vörlaag:Anker Funktion ifexpr
[ännern]ifexpr
wertet einen mathematischen Ausdruck aus.
{{#ifexpr: <ausdruck> | <dann-text> | <sonst-text> }}
Ist das Ergebnis von <ausdruck>
0 (Null), wird <sonst-text>
zurückgegeben. Sonst wird <dann-text>
zurückgegeben. <sonst-text>
kann auch weggelassen werden, dann wird in diesem Fall nichts zurückgegeben.
Die Syntax für Ausdrücke wird in der Beschreibung von expr erklärt.
Vörlaag:Anker Funktion iferror
[ännern]iferror
prüft, ob ein Fehler vorliegt, und gibt je nachdem verschiedene Texte zurück. Ein Fehler wird über die Klasse class="error"
repräsentiert. Diese Klasse wird in den Elementen div
, span
, p
und strong
erkannt. Dies ist ein Fehler, wie er bei #expr, #ifexpr, #time oder #rel2abs auftreten kann. Es können so auch vom Benutzer selber Fehler erzeugt werden.
Das heißt: Wenn innerhalb des getesteten Ausdrucks ein Element wie z. B. <span class="error">
vorhanden ist, wird ein Fehler erkannt und der entsprechende Text zurückgegeben; ansonsten ein anderer Text.
Die Syntax:
{{#iferror: <Ausdruck> | <Text bei Fehler> | <Text bei keinem Fehler> }}
Die letzten beiden Parameter sind optional. Sofern kein Text bei keinem Fehler angegeben ist, wird Ausdruck zurückgegeben. Ist nur Ausdruck angegeben, wird bei einem Fehler nichts ausgegeben, sonst Ausdruck.
Beispiele:
{{#iferror: <Ausdruck> | <Text bei Fehler> | <Text bei keinem Fehler> }}
Bei einem Fehler im Ausdruck wird Text bei Fehler angezeigt, ansonsten wird Text bei keinem Fehler angezeigt.
{{#iferror: <Ausdruck> | <Text bei Fehler> }}
Bei einem Fehler im Ausdruck wird Text bei Fehler angezeigt, ansonsten der fehlerfreie Ausdruck.
{{#iferror: <Ausdruck> }}
Bei einem Fehler im Ausdruck wird nichts angezeigt, die Fehlermeldung wird unterdrückt.
{{#iferror: {{#expr: 1*{{{Para|}}}}} | Keine Zahl | Zahl }}
Ist {{{Para}}} eine Zahl (man kann also mit 1 multiplizieren) wird „Zahl“ ausgegeben, sonst „Keine Zahl“.
Hinweis: Es erfolgt eine relativ einfache Mustererkennung und kein tiefschürfendes Parsing. Insbesondere werden in benutzerdefinierten Meldungen nur die Gänsefüßchen "
erkannt und nicht die syntaktisch gleichwertigen Apostrophzeichen '
und außerdem darf das Gleichheitszeichen nicht von Leerzeichen usw. umgeben sein.
- Neben
error
können aber gleichzeitig auch andere Klassenbezeichner auftreten.
Bei anderen als den simplen Ausdrücken
<span class="error">
<div class="error">
sollte immer überprüft werden, ob sie auch von #iferror:
erkannt werden.
Vörlaag:Anker Funktion switch
[ännern]switch
vergleicht einen Wert mit mehreren anderen. Die Grundsyntax ist:
{{#switch: <vergleichswert> | <wert1> = <ergebnis1> | <wert2> = <ergebnis2> | ... | <wertn> = <ergebnisn> | #default = <standardergebnis> }}
switch
geht alle Werte durch, bis der Vergleichswert gefunden wird. Dann wird das entsprechende Ergebnis (hinter dem Gleichheitszeichen) zurückgegeben. Wenn kein Wert übereinstimmt, wird der Eintrag unter #default
verwendet, sofern es diesen gibt. (Falls das Standardergebnis kein Gleichheitszeichen enthält, kann #default=
auch weggelassen werden.)
„Rückfall“-Werte sind ebenfalls möglich:
{{#switch: <vergleichswert> | <wert1> | <wert2> | <wert3> = <ergebnis1,2,3> | ... | <wertn> = <ergebnisn> | #default = <standardergebnis> }}
Hier wird für <wert1>
, <wert2>
und <wert3>
derselbe Wert <ergebnis1,2,3>
zurückgegeben.
Soll der Vergleichswert beim Einfügen der Vorlage so {{Beispielsvorlage|<wert1>}}
(<wert1>
ist der Vergleichswert) angegeben werden, muss oben <vergleichswert> entsprechend Hilfe:Vorlagen #Parameter mit {{{1}}}
ersetzt werden. Soll die Software den Vergleichswert automatisch ermitteln, können dazu verschiedene Variablen (Hilfe:Variablen) oder andere Vorlagen verwendet werden.
Beispiel: Vorlage {{NAMENSRAUM}}
gibt die Bezeichnung des Namensraums aus. Setzt man für <vergleichswert> {{NAMENSRAUM}}
ein und definiert die Ergebnisse für die verschiedenen Namensräume (Hilfe, Kategorie, Diskussion) wie folgt an
{{#switch: {{NAMENSRAUM}} | Hilfe = <ergebnis1> | Kategorie = <ergebnis2> | #default = <standardergebnis> }}
Wenn diese Vorlage hier im Hilfenamensraum eingebunden wird, gibt sie <ergebnis1>
aus, im Kategorienamensraum <ergebnis2>
. Im Hauptnamensraum gibt sie <standardergebnis>
aus, da {{NAMENSRAUM}}
dort kein Ergebnis ausgibt, dasselbe geschieht auf einer Diskussionsseite, da für Diskussionsseiten kein <ergebnisn>
angegeben ist.
Vörlaag:Anker Funktion time
[ännern]#time
ist eine Funktion für die Zeitdarstellung, die mit der Koordinierten Weltzeit (UTC) arbeitet. Für die lokale Zeit kann die Funktion #timel
angewandt werden.
Die Syntax ist
{{#time: format}}
für das Anzeigen eines aktuellen Zeitwerts, auch in verschiedenen Kalendersystemen. Für die Berechnung zukünftiger/vergangener Zeitpunkte, ausgehend vom jetzigen, gibt es den 2. Parameter:
{{#time: format | time}}
Für einige Formate (in nachfolgender Tabelle als internationalisierbar gekennzeichnet) kann die Ausgabesprache mit einem optionalen Parameter überschrieben werden, z.B. {{#time:l, M j, Y||en}}
→ Sunday, October 27, 2024.
Wenn time nicht angegeben wird, wird der Zeitpunkt der Umwandlung in HTML benutzt. Durch das Servercaching kann es dabei zu Abweichungen bei der Artikelanzeige bis zu einer Woche kommen. Eine manuelle Aktualisierung kann durch einen Purge erfolgen.
Vörlaag:Überschriftensimulation 4 Von MediaWiki unterstützte format-Parameter sind DjlNwzWFmMntLoYyaAgGhHiscrUeIOPTZ (Erklärung der Codes auf php.net) sowie Erweiterungen zu PHP, diese werden in den folgenden zwei Tabellen erklärt. Die Ausgabe erfolgt entsprechend der lokalen Spracheinstellung; durch xn-Codes werden Zahlausgaben in Versalziffern umgewandelt, sofern das per lokaler Spracheinstellung erzeugten typografischen Varianten oder anderen Zahlensystemen benötigt wird.
Code | Beschreibung | Ausgabe in UTC (#time) | Ausgabe in lokaler Zeit (#timel) |
---|---|---|---|
Jahr | |||
Y
|
Jahr vierstellig | 2024 | 2024 |
y
|
Jahr zweistellig | 24 | 24 |
o
|
Jahreszahl nach ISO 8601, gebunden an Kalenderwoche 29. Dezember 2008 = 2009, weil 1. KW; 2. Januar 2011 = 2010, weil 52. KW |
2024 | 2024 |
L
|
Schaltjahr? 1=ja und 0=nein | 1 | 1 |
Monat | |||
M
|
Monatsname abgekürzt (internationalisierbar) | Okt. (Standard) Oct (Englisch) |
Okt. (Standard) Oct (Englisch) |
F
|
Monatsname ausgeschrieben (internationalisierbar) | Oktober (Standard) October (Englisch) |
Oktober (Standard) October (Englisch) |
m
|
Monat mit führender Null | 10 | 10 |
n
|
Monat ohne führende Null | 10 | 10 |
t
|
Gesamt-Anzahl der Tage in diesem Monat | 31 | 31 |
Woche | |||
W
|
Kalenderwoche nach ISO-8601 | 43 | 43 |
Tag | |||
z
|
Tage seit Neujahr, 1. Januar=0; 2. Januar=1, … | 300 | 300 |
j
|
Tag im Monat ohne führende Null | 27 | 27 |
d
|
Tag im Monat mit führender Null | 27 | 27 |
D
|
Wochentag abgekürzt (tw. internationalisierbar) | Sü (Standard) Sun (Englisch) |
Sü (Standard) Sun (Englisch) |
l
|
Wochentag ausgeschrieben (tw. internationalisierbar) | Sünndag (Standard) Sunday (Englisch) |
Sünndag (Standard) Sunday (Englisch) |
w
|
Wochentags-Zähler, Mo(1)–Sa(6), So=0 | 0 | 0 |
N
|
Wochentags-Zähler, Mo(1)–Sa(6), So=7 | 7 | 7 |
Stunde | |||
H
|
Stunde mit führender Null, Mitternacht = 00 | 16 | 17 |
G
|
Stunde ohne führende Null, Mitternacht = 0 | 16 | 17 |
h
|
Stunde im 12-h-Format mit führender Null, Mitternacht & Mittag = 12 | 04 | 05 |
g
|
Stunde im 12-h-Format ohne führende Null, Mitternacht & Mittag = 12 | 4 | 5 |
a / A
|
am und pm, klein- (a) bzw. großgeschrieben (A) | pm / PM | pm / PM |
Minute und Sekunde | |||
i
|
Minute mit führender Null, volle Stunde = 00 | 41 | 41 |
s
|
Sekunde mit führender Null, volle Minute = 00 | 48 | 48 |
Umfassende Zeitangabe | |||
c
|
Datum nach ISO 8601 | 2024-10-27T16:41:48+00:00 | 2024-10-27T17:41:48+01:00 |
r
|
Datum nach RFC 2822 | Sun, 27 Oct 2024 16:41:48 +0000 | Sun, 27 Oct 2024 17:41:48 +0100 |
U
|
Unixzeit | 1730047308 | 1730047308 |
Zeitzone | |||
e
|
Zeitzonen-Kennzeichner | UTC | Europe/Berlin |
I
|
Sommerzeit? 1=ja und 0=nein | 0 | 0 |
O
|
Unterschied zur Greenwich Mean Time | +0000 | +0100 |
P
|
Unterschied zur Greenwich Mean Time mit Trennzeichen | +00:00 | +01:00 |
T
|
Zeitzonen-Name | UTC | CET |
Z
|
Zeitzonen-Offset in Sekunden | 0 | 3600 |
Code | Beschreibung | Ausgabe in UTC |
---|---|---|
xn
|
Sofern die Spracheinstellungen nicht Versalziffern erzeugen, sorgt xn dafür – beispielsweise ergibt {{#time:G, xnG}} in Hindi → १६, 16 | 16 (xnG) |
xr
|
Formatiert den nächsten numerischen Code als römische Zahl. | {{#time: xrY}} → MMXXIV |
xg
|
Gibt die Genitivform des Monatsnamens aus; für Sprachen, die zwischen Genitiv und Nominativ unterscheiden. | Oktober |
xx
|
Der Buchstabe „x“ | x |
|
Tag nach islamischer Zeitrechnung |
23 Rabiʿ ath-thani |
|
Tag im iranischen Kalender |
6 30 |
|
Tag im jüdischen Kalender |
25 30 |
xkY
|
Jahr im thailändischen Sonnenkalender (Tag und Monat sind mit dem gregorianischen Kalender identisch) | 2567 |
xoY
|
Jahr im chinesischen Minguo-Kalender (Tag und Monat sind mit dem gregorianischen Kalender identisch) | 113 |
xtY
|
Jahr im japanischen Nengō-Kalender (Tag und Monat sind mit dem gregorianischen Kalender identisch) | 令和6 |
Jedes unbekannte Zeichen wird unbearbeitet zur Ausgabe durchgereicht. Dazu gibt es zwei Konventionen:
- Zeichen "zwischen doppelten, hochgestellten Anführungszeichen" werden als solche ausgegeben, die Anführungszeichen selbst werden ausgespart. Dies verhindert eine Umwandlung der (Code-)Buchstaben eines Wortes. Anführungszeichen alleine werden als solche ausgegeben. Beispiele:
{{#time: Wort}}
→ 432024Sun, 27 Oct 2024 16:41:48 +000031{{#time: "Wort"}}
→ Wort{{#time: "Wird übermorgen, einem" l "im" F", erledigt."|+ 2 days}}
→ Wird übermorgen, einem Dingsdag im Oktober, erledigt.{{#time: "l, g:i:s a"}}
→ l, g:i:s a
- backslash escapes werden unterstützt: \H ergibt das Zeichen H, \" ergibt das Zeichen "
Vörlaag:Überschriftensimulation 4
Vörlaag:Anker Das Format des time-Parameters ist identisch mit der PHP-Funktion strtotime()
. Relative Angaben wie zum Beispiel „+10 hours“ werden unterstützt, welche etwa für eine Zeitzonen-Berechnung genutzt werden können.
Bei Namen oder Abkürzungen von Monaten oder Wochentagen werden nur die englischsprachigen Bezeichnungen erkannt, die Verwendung von deutschsprachigen Bezeichnungen kann zu einem ungültigen oder unerwarteten Datum führen (Vörlaag:Phab).
Code | Beschreibung | Ausgabe in UTC |
---|---|---|
mit verändertem Datum
| ||
{{#time:j"."n"."Y H":"i":"s|2 days 10 hours 40 minutes ago}}
|
Das angezeigte Datum wird um 2 Tage, 10 Stunden und 40 Minuten nach hinten verschoben | 25.10.2024 06:01:48 |
{{#time:j"."n"."Y H":"i":"s|yesterday}}
|
Gestern | 26.10.2024 00:00:00 |
{{#time:j"."n"."Y H":"i":"s|tomorrow}}
|
Morgen | 28.10.2024 00:00:00 |
{{#time:j"."n"."Y H":"i":"s|2 days}}
|
Übermorgen | 29.10.2024 16:41:48 |
{{#time:j"."n"."Y H":"i":"s|2 years 2 months 2 weeks 2 days}}
|
In 2 Jahren, 2 Monaten, 2 Wochen und 2 Tagen | 12.1.2027 16:41:48 |
{{#time:j"."n"."Y H":"i":"s|1 year 1 month 1 week 1 day}}
|
In einem Jahr, einem Monat, einer Woche und einem Tag | 5.12.2025 16:41:48 |
nur aktuelles Datum
| ||
{{#time:xjj. xjF xjY}}
|
Aktuelles Datum nach dem jüdischen Kalender | 25. Tishrei 5785 |
{{#time:xmj. xmF xmY}}
|
Aktuelles Datum nach dem islamischer Zeitrechnung | 23. Rabiʿ ath-thani 1446 |
{{#time:xij. xiF xiY}}
|
Aktuelles Datum nach dem iranischen Kalender | 6. Aban 1403 |
{{#time:j. F xkY}}
|
Aktuelles Datum nach dem Thailändischen Sonnenkalender | 27. Oktober 2567 |
{{#time:j. F xoY}}
|
Aktuelles Datum nach dem chinesischen Minguo-Kalender | 27. Oktober 113 |
{{#time:xtY/n/j}}
|
Aktuelles Datum nach dem japanischen Nengō-Kalender | 令和6/10/27 |
Siehe das GNU tar manual für weitere Informationen.
Vörlaag:Anker Funktion rel2abs
[ännern]{{#rel2abs:}}
ermöglicht die relative Navigation in Unterseiten.
Ein relativer Seitenpfad kann ".", ".." sein oder mit "/", "./" "../" beginnen.
Relativer Seitenpfad | Basis | Beispiel | Ergebnis |
---|---|---|---|
. | {{#rel2abs: .}}
|
Hülp:Vorlagenprogrammierung | |
.. | {{#rel2abs: ..}}
|
||
. | ns:a/b | {{#rel2abs: .|ns:a/b}}
|
ns:a/b |
.. | ns:a/b | {{#rel2abs: ..|ns:a/b}}
|
ns:a |
/x | ns:a/b | {{#rel2abs: /x|ns:a/b}}
|
ns:a/b/x |
./x | ns:a/b | {{#rel2abs: ./x|ns:a/b}}
|
ns:a/b/x |
../x | ns:a/b | {{#rel2abs: ../x|ns:a/b}}
|
ns:a/x |
../../x | ns:a/b | {{#rel2abs: ../../x|ns:a/b}}
|
x |
Vörlaag:Anker Funktion titleparts
[ännern]{{#titleparts:}}
gibt die angegebene Anzahl an Teilen (ab einer angegebenen Stelle) eines Seitentitels zurück, die durch einen Schrägstrich ("/
") getrennt sind. Namensraum und Seitenname bis zum ersten "/" gelten dabei als erster Teil. Beispiele:
Ein Zahlenparameter
[ännern]- Ist der Zahlenparameter = 0, so wird der ganze Seitenname zurückgegeben
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|0}}
ergibt
Namensraum:Seite1/Teil2/Teil3/Teil4
- Ist der Zahlenparameter > 0, so werden von links aus entsprechend viele Teile zurückgegeben
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|1}}
ergibt
Namensraum:Seite1
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|2}}
ergibt
Namensraum:Seite1/Teil2
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|3}}
ergibt
Namensraum:Seite1/Teil2/Teil3
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|4}}
ergibt
Namensraum:Seite1/Teil2/Teil3/Teil4
- Ist der Zahlenparameter < 0, so werden von rechts aus entsprechend viele Teile abgetrennt (!)
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|-1}}
ergibt
Namensraum:Seite1/Teil2/Teil3
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|-2}}
ergibt
Namensraum:Seite1/Teil2
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|-3}}
ergibt
Namensraum:Seite1
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|-4}}
ergibt
- (leere Zeichenkette, da alles abgetrennt wird)
Zwei Zahlenparameter
[ännern]- Eine Null als zweiter Parameter bewirkt das Gleiche wie eine 1.
{{#titleparts:Zeichenkette|0|n}}
ergibt:- "Alles von Teil n bis zum Ende"
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|0|1}}
ergibt
Namensraum:Seite1/Teil2/Teil3/Teil4
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|0|2}}
ergibt
Teil2/Teil3/Teil4
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|0|3}}
ergibt
Teil3/Teil4
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|0|4}}
ergibt
Teil4
{{#titleparts:Zeichenkette|m|n}}
mit m >0 und n > 0 ergibt:- "m Teile, beginnend mit Teil Nr. n" (wenn entsprechend viele existieren, ansonsten bis zum Ende)
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|1|1}}
ergibt
Namensraum:Seite1
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|1|2}}
ergibt
Teil2
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|1|3}}
ergibt
Teil3
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|1|4}}
ergibt
Teil4
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|1|5}}
ergibt
- (leere Zeichenkette, denn ein "Teil5" ist nicht vorhanden)
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|2|1}}
ergibtNamensraum:Seite1/Teil2
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|2|2}}
ergibtTeil2/Teil3
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|2|3}}
ergibtTeil3/Teil4
{{#titleparts:Namensraum:Seite1/Teil2/Teil3/Teil4|2|4}}
ergibtTeil4
(Nur ein Teil, denn ein "Teil5" ist nicht vorhanden)
Die Funktion ist nur für Seitennamen ausgelegt. Daher funktioniert die Funktion nur mit Zeichen, die auch im Seitennamen erlaubt sind. Im Fehlerfall wird der gesamte Parameter zurückgegeben.
Vörlaag:Anker Substitution mit subst und safesubst
[ännern]Beide Funktionen werden als Präfix zu einer Vorlage oder Funktion verwendet und dienen dazu, dass der entsprechende Vorlagen- oder Funktionsaufruf durch dessen Inhalt ersetzt (substituiert) wird. Beide Funktionen verhalten sich weitgehend identisch, außer dass bei einer nichtsubstituierenden Verwendung der komplette Ausdruck {{subst:...}}
ungeparst bleibt, während der Ausdruck {{safesubst:...}}
so behandelt wird, als wäre das safesubst:
-Präfix nicht vorhanden.
Die Ersetzung geschieht dabei nicht rekursiv, d. h., in einer Vorlage verwendete Vorlagen- oder Funktionsaufrufe werden so übernommen, wie sie sind, anstatt wiederum aufgelöst zu werden.
Achtung: Innerhalb der in <ref>
eingeschlossenen Bereiche wird nicht substituiert.
Als Beispiel diene die Vorlage:GeradeOderUngerade
mit dem Inhalt {{#ifexpr:{{{1}}} mod 2|ungerade|gerade}}
. Beim Abspeichern des Seiteninhalts Die Zahl 7 ist {{subst:GeradeOderUngerade|7}}.
würde dieser durch Die Zahl 7 ist {{#ifexpr:7 mod 2|ungerade|gerade}}.
ersetzt werden. Wie man sieht, werden die Parameter mit ihren Eingabewerten belegt (d. h. hier {{{1}}}
), aber nur die Vorlage direkt selber durch ihren Inhalt ersetzt, nicht aber die enthaltenen Ausdrücke.
Rekursive Substitution
[ännern]Für eine weiter gehende, d. h. rekursive Substitution, müssen die enthaltenen Vorlagen oder Parserfunktionen ebenfalls explizit substituiert werden. Dabei kann der Inhalt des Beispiels aber nicht einfach in {{subst:#ifexpr:{{{1}}} mod 2|ungerade|gerade}}
abgeändert werden, da schon beim Abspeichern unmittelbar die Substitution ausgeführt werden würde. Da der Parameter 1 noch unbelegt ist, gibt der Parser einen Fehler zurück, da der gesamte Ausdruck nicht auswertbar ist, und diese Fehlermeldung würde wegen der Substitution als Vorlageninhalt abgespeichert.
Zum Erreichen einer rekursiven Substitution muss also verhindert werden, dass diese schon beim Abspeichern angewendet wird. Dafür gibt es zwei Möglichkeiten:
<includeonly>safesubst:</includeonly>
{{{|safesubst:}}}
Für beide Fälle kann auch subst
verwendet werden. safesubst
ist hier jedoch vorzuziehen, da sich subst
unterschiedlich verhält, je nachdem, ob die entsprechende Seite (hier Vorlage:GeradeOderUngerade
) substituierend (d. h. {{subst:GeradeOderUngerade|...}}
) oder nichtsubstituierend (d. h. {{GeradeOderUngerade|...}}
) verwendet wird.
Wenn im gegebenen Beispiel Vorlage:GeradeOderUngerade
der Inhalt nach {{{{{|safesubst:}}}#ifexpr:{{{1}}} mod 2|ungerade|gerade}} geändert wird, würde bei einer Substitution der Vorlage der Seiteninhalt durch das gewünschte Die Zahl 7 ist ungerade.
ersetzt werden. Um eine Vorlage demnach vollständig rekursiv substituieren zu können, d. h., das Ergebnis wäre Wikitext ohne Vorlagen- oder Funktionsaufrufe, müsste <includeonly>subst:</includeonly>
oder {{{|safesubst:}}}
für alle darin verwendeten Aufrufe von Funktionen und Vorlagen rekursiv gesetzt werden.
Anmerkung: Einige Funktionen können sich sehr unterschiedlich verhalten, z. B. nicht substituierbar sein. Daher ist ein Test vorher immer anzuraten. Für weitere Tipps und Tricks gibt es eine englischsprachige Hilfeseite sowie auf Deutsch mw:Help:Extension:ParserFunctions/de#Substituieren.
Warnung: Die Ergebnisse substituierter Funktionen sind undefiniert, wenn der Code von äußereren Bedingungen abhängt (etwa #ifexist); es muss sämtlicher variabler Code im zu berechnenden Ausdruck substituiert werden.
Besonderheiten
[ännern]
Tabellen
[ännern]
Vörlaag:Anker Funktion tag
[ännern]
Sämtliche Parsererweiterungs-Tags lassen sich auch mit Hilfe der Funktion #tag erzeugen. Dies ist insbesondere bei dynamischen, von Vorlagenparametern abhängigen Imagemaps (<imagemap>
) oder Einzelnachweisen (<ref>
) erforderlich.
So kann innerhalb von Vorlagen anstelle von <imagemap>…</imagemap>
auch {{#tag:imagemap|…}}
geschrieben werden, wobei senkrechte Striche durch {{!}}
zu ersetzen sind. Damit wird die Auswertung von Vorlagenparametern innerhalb der Imagemap ermöglicht.
Tag-Attribute wie in <ref name="…" group="…">…</ref>
müssen wie folgt hinten angefügt werden: {{#tag:ref|…|name="…"|group="…"}}
.
Weblinks und hexadezimale Farbdefinitionen maskieren
[ännern]
Interessant ist die Funktion auch zusammen mit <nowiki>
. So können Weblinks maskiert werden, damit sie von der Vorlage als reiner Text ausgegeben werden: {{#tag:nowiki|{{{Link}}}}}
. Hexadezimale Farbdefinitionen wie #FFFFFF
werden unter Umständen als Aufzählung interpretiert, wenn sie als Parameter übergeben wurden (Vörlaag:Phab). Dies lässt sich auf gleiche Weise umgehen: {{#tag:nowiki|{{{Farbe}}}}}
.
Vörlaag:Anker Funktion babel
[ännern]
Aus mw:Extension:Babel stammt #babel
. Zu Einzelheiten siehe Wikipedia:Babel #mwExt.
Problem: Leerzeichen
[ännern]
Unbenannte Vorlagenparameter sind sensibel für Leerzeichen, bei benannten Vorlagenparametern und als Argumente einer Parserfunktion werden umschließende Leerzeichen „geschluckt“.
Bei Konstruktion einer URL beispielsweise können Leerzeichen stören. Sollen diese in Parametern Verwendung finden, finden sich Lösungen unter Hilfe:Variablen #urlencode.
Beim Zusammensetzen von Texten aus Wörtern können Leerzeichen erwünscht sein; durch  
lassen sie sich vor unbeabsichtigter Entfernung schützen.
Trick zur Entfernung
[ännern]
Das Konstrukt {{#if:trim|{{{1}}}}}
ist immer „wahr“ und liefert immer den Wert von {{{1}}}
. Weil dies aber Parameter in einer Parserfunktion war, ist der Wert derjenige von {{{1}}}
ohne führende und schließende Leerzeichen. Das Schlüsselwort trim
zeigt nachfolgenden Programmierern den Zweck dieser auf den ersten Blick unsinnigen Konstruktion an.
Programmierhilfen
[ännern]
Zahlen
[ännern]
Um den Quelltext nicht zu sehr aufzublähen, gibt es Vorlagen, mit denen Berechnungen eingebunden werden können:
{{Ziffer}}
extrahiert eine Ziffer aus einer Ganzzahl
{{Quersumme}}
berechnet eine Quersumme
{{Min}}
und {{Max}}
bestimmen das Minimum bzw. Maximum beliebig vieler Zahlen
{{IstZahl}}
prüft, ob ein Parameter eine Zahl ist oder nicht
{{Maß}}
Formatierung einheitenbehafteter Parameter
{{DezimalkommaZuPunkt}}
vereinheitlicht das Zahlenformat für #expr:
, wenn es gemischt vorkommt. {{Formnum}}
wandelt das Zahlenformat wieder zurück in die deutsche Schreibweise mit , als Dezimaltrenner. Die Verwendung dieser beiden Vorlagen ist nur sinnvoll, wenn mit Parameterwerten bestehender Vorlagen, die in unterschiedlichem Format vorliegen, gearbeitet werden soll, ohne sie durch einen Boteinsatz in ein einheitliches Format bringen zu müssen. Es ist nicht sinnvoll, neue Infoboxen und dergleichen mit diesen Vorlagen zu versehen. Bitte stattdessen die Parameterwerte einfach gleich von Anfang an im richtigen Format erfassen und die Parserfunktion {{formatnum:…}}
verwenden.
Überprüfung von Zeichenketten
[ännern]
Mit #(if)expr: können zwar numerische Werte, jedoch keine Zeichenketten verwendet werden. Dies lässt sich aber über die Skriptsprache Lua durch die folgenden Vorlagen bewerkstelligen. Sie sind nicht Teil der ParserFunctions, werden allerdings der Vollständigkeit halber hier mit aufgelistet, um einen umfassenden Überblick über die zur Vorlagen-Programmierung einsetzbaren Mittel zu geben.
{{Str left|Text|Anzahl}}
gibt die ersten Anzahl Zeichen von Text
zurück
{{Str crop|Text|Anzahl}}
gibt den Text ohne die letzten Anzahl
Zeichen zurück
{{Str find|Text|Teilstring}}
dient der Suche eines Teilstrings in einem Text
{{Str len|Text}}
ermittelt die Länge von Text
{{Str index|Text|Index}}
gibt ein einzelnes Zeichen aus Text
zurück, dessen Position durch Index
festgelegt wird
{{Str right|Text|Offset}}
gibt die Zeichen rechts von Offset
wieder
{{Str rightc|Text|Anzahl}}
gibt die letzten Anzahl
Zeichen wieder
{{Str sub|Text|Index|Anzahl}}
gibt den Teil an der Position Index
mit Anzahl
Zeichen von Text
zurück
{{Str ≥ len|Text|Länge|…}}
prüft, ob Text
nicht kürzer als eine gegebene Länge
ist
{{Str match|Text|Regex}}
gibt eine Teilzeichenkette basierend auf einem Regex zurück
Boolesche Funktionen
[ännern]
Um komplizierte if
-Konstruktionen zu vermeiden, stehen die folgenden Vorlagen zur Verfügung. Sie basieren sämtlich auf der Schachtelung mehrerer if
und können daher auch rein mit Parserfunktionen beschrieben werden. Ihr Einsatz dient meist nur der Übersichtlichkeit, teilweise erfüllt er auch Vereinfachungsansprüche, wenn bereits die übergebenen Parameter komplizierte Ausdrücke sind (und andernfalls mehrfach ausgewertet werden müssten).
Nachfolgend bedeutet „wahr“, dass der jeweilige Parameter eine nicht-leere Zeichenkette enthält sowie nicht nur aus Leerraum besteht. Die Vorlagen geben in diesem Fall üblicherweise 1
zurück, sodass das Ergebnis sowohl in Bedingungen als auch Berechnungen weiterverarbeitet werden kann.
Syntax
Beschreibung
Wahrheitstabelle
{{Booland|A|B}}
Das Ergebnis ist wahr, wenn A und B wahr sind.
In einfachen Fällen ohne Sonst-Zweig genügt auch:
{{#if: {{{A|}}} | {{#if: {{{B|}}} | <Dann-Text> }} }}
Vörlaag:Wahrheitstabelle
{{Boolandeq|A|B|C}}
Das Ergebnis ist wahr, wenn A wahr ist und B und C den gleichen Text beinhalten (siehe ifeq
).
Vörlaag:Wahrheitstabelle
{{Boolor|A|B}}
Das Ergebnis ist wahr, wenn A und/oder B wahr sind.
Die zu überprüfenden Parameter werden einfach verkettet, wozu keine Vorlage nötig ist:
{{#if: {{{A|}}}{{{B|}}} | <Dann-Text> | <Sonst-Text> }}
Vörlaag:Wahrheitstabelle
{{Boolxor|A|B}}
Das Ergebnis ist wahr, wenn entweder A oder B wahr ist.
Vörlaag:Wahrheitstabelle
{{Booleq|A|B}}
Das Ergebnis ist wahr, wenn sich aus A und B die gleichen Wahrheitswerte ergeben. Nicht zu verwechseln mit ifeq
.
Vörlaag:Wahrheitstabelle
{{Boolnand|A|B}}
Das Ergebnis ist wahr, wenn A oder B falsch sind.
Vörlaag:Wahrheitstabelle
{{Boolnor|A|B}}
Das Ergebnis ist wahr, wenn A und B falsch sind.
Wie bei boolor beschrieben, ist hier keine Vorlage notwendig; es werden die Dann- und Sonst-Zweige vertauscht (wie bei boolnot):
{{#if: {{{A|}}}{{{B|}}} | <Sonst-Text> | <Dann-Text> }}
Vörlaag:Wahrheitstabelle
{{Boolandnot|A|B}}
Das Ergebnis ist wahr, wenn A wahr und B falsch ist.
Vörlaag:Wahrheitstabelle
{{Boolandnoteq|A|B|C}}
Das Ergebnis ist wahr, wenn A wahr ist und B und C nicht den gleichen Text beinhalten (siehe ifeq
).
Vörlaag:Wahrheitstabelle
{{Boolornot|A|B}}
Das Ergebnis ist wahr, wenn B A impliziert, also wenn A wahr oder B falsch ist.
Vörlaag:Wahrheitstabelle
{{Boolnot|A}}
Das Ergebnis ist wahr, wenn A falsch ist.
Statt einer negierten Bedingung werden hier einfach Dann- und Sonst-Zweige vertauscht:
{{#if: {{{A|}}} | <Sonst-Text> | <Dann-Text> }}
Vörlaag:Wahrheitstabelle
Des Weiteren gibt es noch Vorlage:Booland3 und Vorlage:Booland4, welche der Und-Verknüpfung von drei bzw. vier Zeichenketten dienen.
Testen
[ännern]
Vorlagen mit Parserfunktionen können auf der Spezialseite Vorlagen expandieren getestet werden.
Dabei wird der Aufruf der Vorlage (beispielsweise Vorlage:Infobox Tennisspieler) mit ihren Parametern in das „Eingabefeld“ kopiert:
{{Infobox Tennisspieler
| Nationalität = deutsch
| Geburtstag = 01.01.2000
| ErsteProfisaison = 2000
| Spielhand = links oder rechts
}}
Über das Feld „Kontexttitel“ kann optional ein Seitenname übergeben werden, der die seitenabhängige Variable {{PAGENAME}}
füllt.
Beispielhafter Seitenname
Im o. g. Beispiel führt dies dazu, dass in der Vorschau oberhalb der Infobox nicht „ExpandTemplates“, sondern „Beispielhafter Seitenname“ angezeigt wird.
Weiterführende Informationen finden sich unter Extension:ExpandTemplates.
Beim Erstellen oder Ändern von Vorlagen kann der Quelltext kurzzeitig auf die Vorlage:Spielwiese kopiert und dort geändert werden, bis er richtig funktioniert. Danach wird der getestete Quelltext in das „Bearbeiten“-Fenster der eigentlichen Vorlage kopiert, gespeichert und die Spielwiese wieder gesäubert.
Wenn die Auswirkungen von Änderungen an Vorlagen mit komplexeren Abhängigkeiten, z.B. an Vorlagen, die wiederum von anderen Vorlagen verwendet werden, überprüft werden sollen, bietet sich die Spezial:Vorlagenspielwiese mit dem unter Hilfe:Vorlagenspielwiese beschriebenen Anwendungsfall an.
Siehe auch
[ännern]
- Wikipedia:WikiProjekt Vorlagen
- Hülp:Vörlagen
- Hülp:Vorlagenbeschränkungen
- Hülp:Lua
- Quelle: Düütsche Wikipedia 18.09.2016 https://de.wikipedia.org/wiki/Vorlage:Str_left
Weitere Informationen
[ännern]
- ParserFunctions – Zentrale Hilfeseite auf MediaWiki.org
- Extension:ParserFunctions auf MediaWiki.org
- ParserFunctions trial (englisch)
- Vörlaag:Phab
- Vörlaag:Phab
- Vörlaag:Phab