Die Vorlage FormatDate formatiert ein in Anlehnung an ISO 8601 angegebenes Datum wie 2000-06-29 (29. Juni 2000), etwa zur Verwendung in Listen oder Infoboxen. Dabei wird der volle oder ein abgekürzter deutscher Monatsname erzeugt, der volle Name ist Standard. Im Gegensatz zur Parser-Funktion #time kann diese Vorlage alle Daten verarbeiten, auch Daten vor dem Jahr 1. Durch Angabe einer 0 für Monat bzw. Tag kann eine Ausgabe ohne Monats-/Tagesangabe erzielt werden. Zusätzliche Parameter bewirken Verlinkung oder durchgängige Verwendung von geschützten Leerzeichen ( ).

Zur Verwendung in sortierbaren Tabellen gibt es die fast gleichwertige Vorlage:SortDate, die neben der Formatierung auch noch für die richtige Sortierung sorgt.

Aufruf (Normalfall) Schaffe

  • {{FormatDate|Datum}}
  • {{FormatDate|Datum|Formatcode}}

Dabei muss „Datum“ in der Form „jjjj-mm-tt“ oder „jjjj-m-t“ angegeben werden, also z. B. „1881-11-03“ für den 3. November 1881. Die Angabe in der Form „jjjj-mm-0“ oder „jjjj-mm-00“ unterdrückt die Angabe des Tages für Datumsangaben, die nur monatsgenau sind. Die Angabe in der Form „jjjj-0-0“ oder „jjjj-00-00“ gibt nur das Jahr aus. Angaben mit führendem (Bindestrich‑)Minus wie „-33-07-11“ bezeichnen Daten vor dem Jahr Vorlage:FormatDate: Ungültiger Wert ("0-0-0") für das Datum! Vorlage:FormatDate/Wartung/Error, hier den 11. Juli 33 v. Chr. (nicht den 11. Juli 32 v. Chr.!). (Als Trennzeichen ist ausschließlich das Zeichen „-“, das Bindestrich‑Minus, zu verwenden, keine andere Variante eines Striches wie Gedankenstrich, „typografisch korrektes“ Minuszeichen, usw. Das gleiche gilt, abweichend von ISO 8601, für die eventuell einleitende Minus-Angabe.).

Als zweiter Parameter kann ein Formatcode angegeben werden: „F“ (= ‚full‘) oder „M“ (= ‚month‘, dreibuchstabig) wie bei #time, zusätzlich „S“ (= ‚short‘, vierbuchstabig/drei mit «.»). „F“ ist Standard, kann also weggelassen werden:

Format-
code
Form der Monatsangabe Beispiel Resultat
ohne Januar Februar ... {{FormatDate|2000-02-29}}
{{FormatDate|2000-03-01}}
29. Februar 2000
1. März 2000
F Januar Februar ... {{FormatDate|2000-02-29|F}}
{{FormatDate|2000-03-01|F}}
29. Februar 2000
1. März 2000
M Jan. Feb. Mär. Apr. Mai Jun. Jul. Aug. ... {{FormatDate|2000-02-29|M}}
{{FormatDate|2000-03-01|M}}
29. Feb. 2000
1. März 2000
S Jan. Feb. März Apr. Mai Juni Juli Aug. ... {{FormatDate|2000-02-29|S}}
{{FormatDate|2000-03-01|S}}
29. Feb. 2000
1. Mrz. 2000

Aufruf mit Zusatzparametern Schaffe

Hinter dem Datum und evtl. dem Formatcode sind zwei weitere Parameter möglich:

Parameter Wirkung Anmerkung
nbsp zwischen Monat und Jahr wird ein geschütztes Leerzeichen ( ) gesetzt Standard ist an dieser Stelle ein normales Leerzeichen, überall sonst wird immer ein geschütztes Leerzeichen erzeugt.
sp zwischen Monat und Jahr wird ein normales Leerzeichen gesetzt
link das Datum wird verlinkt
AT=ja Jänner anstatt Januar

Beispiele Schaffe

Aufruf Ergebnis Parserfunktion zum Vergleich Ergebnis
{{FormatDate|1-1-1}} 1. Januar 1 nicht möglich
{{FormatDate|1234-2-28}} 28. Februar 1234 {{#time:j. F Y|1234-2-28}} 28. Februa 1234
{{FormatDate|1881-3-1}} 1. März 1881 {{#time:j. F Y|1881-3-1}} 1. Mäaz 1881
{{FormatDate|1881-04-01}} 1. April 1881 {{#time:j. F Y|1881-04-01}} 1. Abril 1881
{{FormatDate|2000-05-30}} 30. Mai 2000 {{#time:j. F Y|2000-05-30}} 30. Mai 2000
{{FormatDate|2000-06-29|M}} 29. Juni 2000 {{#time:j. M Y|2000-06-29}} 29. Jun 2000
{{FormatDate|2000-07-28|S}} 28. Jul. 2000 nicht möglich
{{FormatDate|2000-08-27|F}} 27. August 2000 {{#time:j. F Y|2000-08-27}} 27. Auguschd 2000
{{FormatDate|2000-9-0}} September 2000 {{#time:F Y|2000-9}} Sebdemba 2000
{{FormatDate|2000-10-0}} Oktober 2000 {{#time:F Y|2000-10}} Ogdowa 2000
{{FormatDate|2000-11-00}} November 2000 {{#time:F Y|2000-11}} Nowemba 2000
{{FormatDate|2000-12-00}} Dezember 2000 {{#time:F Y|2000-12}} Dezemba 2000
{{FormatDate|2000-0-0}} 2000 {{#time:Y|2000}} 2000
{{FormatDate|2000-9-9|link}} 9. September 2000 {{#time:[[j. F]] [[Y]]|2000-9-9}} 9. Sebdemba 2000
{{FormatDate|2000-9-0|link}} September 2000 {{#time:F [[Y]]|2000-9}} Sebdemba 2000
{{FormatDate|2000-0-0|link}} 2000 [[{{#time:Y|2000}}]] 2000
{{FormatDate|1881-3-1|nbsp}} 1. März 1881 {{#time:j. F Y|1881-3-1}} 1. Mäaz 1881
{{FormatDate|1881-3-1|sp}} 1. März 1881 {{#time:j. F Y|1881-3-1}} 1. Mäaz 1881
{{FormatDate|1881-3-1|nbsp|link}} 1. März 1881 {{#time:[[j. F]] [[Y]]|1881-3-1}} 1. Mäaz 1881
{{FormatDate|1881-3-1|sp|link}} 1. März 1881 {{#time:[[j. F]] [[Y]]|1881-3-1}} 1. Mäaz 1881
{{FormatDate|-200-12-1}} 1. Dezember 200 v. Chr. nicht möglich
{{FormatDate|0-12-25}} 25. Dezember nicht möglich
{{FormatDate|2000}} 2000 {{#time:Y|2000}} 2000
{{FormatDate|1881-01-11|AT=ja}} 11. Jänner 1881 nicht möglich

Verhalten bei fehlerhafter Verwendung Schaffe

Aufruf Ergebnis Parserfunktion zum Vergleich Ergebnis
{{FormatDate|2000-02-30}} Vorlage:FormatDate: Ungültiges Datum!Vorlage:FormatDate/Wartung/Error {{#time:j. F Y|2000-02-30}} 1. Mäaz 2000
{{FormatDate|31.12.2000}} Vorlage:FormatDate: Kein gültiges ISO-Datum!Vorlage:FormatDate/Wartung/Error {{#time:j. F Y|31.12.2000}} 31. Dezemba 2000
{{FormatDate|2000.12.31}} Vorlage:FormatDate: Kein gültiges ISO-Datum!Vorlage:FormatDate/Wartung/Error {{#time:j. F Y|2000.12.31}} Fehler: Ungültige Zeitangabe
{{FormatDate|xxx}} Vorlage:FormatDate: Kein gültiges ISO-Datum!Vorlage:FormatDate/Wartung/Error {{#time:j. F Y|xxx}} Fehler: Ungültige Zeitangabe

Siehe auch Schaffe