Template:Date
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦
| This template is used on approximately ༡༠༥,༠༠༠ pages. To avoid major disruption and server load, any changes should be tested in the template's /sandbox or /testcases subpages, or in your own user subpage. The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them. |
| This template should only be used internally within other templates. |
Description
[ཞུན་དག]This template converts a date to one of the standard date formats used on the English Wikipedia.
This template should only be used internally in other templates. For formatting dates in articles, see Wikipedia's or an overview of date formatting guidelines.
If you want sortable dates for a table, use {{date table sorting}} instead.
Syntax
[ཞུན་དག]This template takes up to two parameters, both of which are optional:
{{date|<date to be formatted>|<date formatting style>}}
- <date to be formatted> is an (optional) date to be formatted.
- If no date is specified, the template emits the current date.
For example,{{date}}produces ༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦. To avoid emitting the current date if none is input, use Template:fdate. - If a date is provided, but is not recognized as one, the text is just returned as is. Most dates will however be recognized as such, including all the formats typically used on Wikipedia. Numerous variations thereof are also supported, including abbreviated or lower-case month names; ordinal "st", "nd", "rd", "th"; extraneous white space; missing comma, etc.
- Notes:
- Some dates are converted even if they are not real dates, and some dates are not converted even though they are real dates. See known issues below.
- Only dates within the range ༡ སྤྱི་ཟླ་དང་པ། ༡༠༠༠ and ༣༡ སྤྱི་ཟླ་བཅུ་གཉིས་པ། ༩༩༩༩ are supported. Dates with two-digit years will have the years from 1970 to 2069. Other dates outside the range 1000–9999 will be treated as if the second parameter were "none".
- when using month numbers in numeric, the valid formats are MM/DD/YYYY, DD-MM-YYYY, DD.MM.YYYY, YYYY/MM/DD, YYYY-MM-DD, MM/DD/YY, YY-MM-DD, DD.MM.YY, the invalid formats are DD/MM/YYYY, MM-DD-YYYY, MM.DD.YY, YYYY.MM.DD, MM.DD.YYYY, DD-MM-YY, YY/MM/DD, DD/MM/YY, YY.MM.DD
- If no date is specified, the template emits the current date.
- <date formatting style> controls the date format in which the result is to be emitted. Recognized values for the second parameter are:
DMYTemplate:0gives d mmmm yyyy (e.g. ༣༡ སྤྱི་ཟླ་ལྔ་པ། ༢༠༠༧). This is the default format.MDYTemplate:0gives mmmm d, yyyy (e.g. སྤྱི་ཟླ་ལྔ་པ། ༣༡, ༢༠༠༧)YMDTemplate:0gives yyyy mmmm d (e.g. ༢༠༠༧ སྤྱི་ཟླ་ལྔ་པ། ༣༡)ISOTemplate:0gives an ISO 8601 style yyyy-mm-dd (e.g. ༢༠༠༧-༠༥-༣༡)noneapplies no formatting whatsoever
- If a date to be formatted is provided but no style is specified, the template emits a date in "d month yyyy" format, as it appears (for example) on discussion pages. When no date is specified, then the current date is emitted with no year, either in "d month" format for formatting style
DMY, or in "month d" format for formatting stylesMDY,YMDandISO. - Notes:
- Only
DMY/lDMYandMDY/lMDYare in accordance with the English language Wikipedia's . The use ofISO/lISO(ISO 8601) format within article prose is expressly discouraged by the Manual of Style; this format should only be used in tables, lists, or references. - Wikipedia caches the current version of pages, and the template may display the date that the page was cached, rather than the current date.
- Only
Examples
[ཞུན་དག]With valid input
[ཞུན་དག]| Format | Input | Output |
|---|---|---|
| not specified | {{date|2006-08-04}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༠༦ |
{{date|Aug 4, 2006}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༠༦ | |
{{date|4 August 2006}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༠༦ | |
{{date|4 August}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༢༦ | |
{{date|Aug 4}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༢༦ | |
{{date|}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ (missing year) | |
{{date}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
{{date|2=}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
| DMY format | {{date|2006-08-04|DMY}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༠༦ |
{{date|Aug 4, 2006|DMY}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༠༦ | |
{{date|4 August 2006|DMY}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༠༦ | |
{{date|4 August|DMY}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༢༦ | |
{{date|Aug 4|DMY}}
|
༤ སྤྱི་ཟླ་བརྒྱད་པ། ༢༠༢༦ | |
{{date||DMY}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ (missing year) | |
{{date|2=DMY}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
{{date|{{date}}|DMY}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
| MDY format | {{date|2006-08-04|MDY}}
|
སྤྱི་ཟླ་བརྒྱད་པ། ༤, ༢༠༠༦ |
{{date|Aug 4, 2006|MDY}}
|
སྤྱི་ཟླ་བརྒྱད་པ། ༤, ༢༠༠༦ | |
{{date|4 August 2006|MDY}}
|
སྤྱི་ཟླ་བརྒྱད་པ། ༤, ༢༠༠༦ | |
{{date|4 August|MDY}}
|
སྤྱི་ཟླ་བརྒྱད་པ། ༤, ༢༠༢༦ | |
{{date|Aug 4|MDY}}
|
སྤྱི་ཟླ་བརྒྱད་པ། ༤, ༢༠༢༦ | |
{{date||MDY}}
|
སྤྱི་ཟླ་དང་པ། ༡༨, ༢༠༢༦ (missing year) | |
{{date|2=MDY}}
|
སྤྱི་ཟླ་དང་པ། ༡༨, ༢༠༢༦ | |
{{date|{{date}}|MDY}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
| YMD format | {{date|2006-08-04|YMD}}
|
༢༠༠༦ སྤྱི་ཟླ་བརྒྱད་པ། ༤ |
{{date|Aug 4, 2006|YMD}}
|
༢༠༠༦ སྤྱི་ཟླ་བརྒྱད་པ། ༤ | |
{{date|4 August 2006|YMD}}
|
༢༠༠༦ སྤྱི་ཟླ་བརྒྱད་པ། ༤ | |
{{date|4 August|YMD}}
|
༢༠༢༦ སྤྱི་ཟླ་བརྒྱད་པ། ༤ | |
{{date|Aug 4|YMD}}
|
༢༠༢༦ སྤྱི་ཟླ་བརྒྱད་པ། ༤ | |
{{date||YMD}}
|
༢༠༢༦ སྤྱི་ཟླ་དང་པ། ༡༨ (missing year) | |
{{date|2=YMD}}
|
༢༠༢༦ སྤྱི་ཟླ་དང་པ། ༡༨ | |
{{date|{{date}}|YMD}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
| ISO format | {{date|2006-08-04|ISO}}
|
༢༠༠༦-༠༨-༠༤ |
{{date|Aug 4, 2006|ISO}}
|
༢༠༠༦-༠༨-༠༤ | |
{{date|4 August 2006|ISO}}
|
༢༠༠༦-༠༨-༠༤ | |
{{date|4 August|ISO}}
|
--08-04 | |
{{date|Aug 4|ISO}}
|
--08-04 | |
{{date|{{#time: --m-d}}|ISO}}
|
--༠༡-༡༨ (missing year) | |
{{date|2=ISO}}
|
༢༠༢༦-༠༡-༡༨ | |
{{date|{{date}}|ISO}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ | |
| none format | {{date|2006-08-04|none}}
|
2006-08-04 |
{{date|Aug 4, 2006|none}}
|
Aug 4, 2006 | |
{{date|4 August 2006|none}}
|
4 August 2006 | |
{{date|4 August|none}}
|
4 August | |
{{date|Aug 4|none}}
|
Aug 4 | |
{{date||none}}
|
(blank) | |
{{date|2=none}}
|
(blank) | |
{{date|{{date}}|none}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ |
Other acceptable input
[ཞུན་དག]A wide variety of other input formats are handled correctly by the template:
| Input | Output |
|---|---|
{{date|1st December 2008}} (ordinal 'st')
|
༡ སྤྱི་ཟླ་བཅུ་གཉིས་པ། ༢༠༠༨ |
{{date|June 24 2006}} (missing comma)
|
༢༤ སྤྱི་ཟླ་དྲུག་པ། ༢༠༠༦ |
{{date|24 june 2006}} (lowercase month name)
|
༢༤ སྤྱི་ཟླ་དྲུག་པ། ༢༠༠༦ |
{{date|24 jun}} (abbreviated month name)
|
༢༤ སྤྱི་ཟླ་དྲུག་པ། ༢༠༢༦ |
{{date|June 2006}}
|
སྤྱི་ཟླ་དྲུག་པ། ༢༠༠༦ |
{{date|2006 June}}
|
༡ སྤྱི་ཟླ་དྲུག་པ། ༢༠༠༦ |
{{date|05/31/2012}}
|
༣༡ སྤྱི་ཟླ་ལྔ་པ། ༢༠༡༢ |
{{date|31-05-2012}}
|
༣༡ སྤྱི་ཟླ་ལྔ་པ། ༢༠༡༢ |
Invalid input
[ཞུན་དག]Input strings that the template cannot format are returned unaltered. This includes strings containing characters such as square brackets, so any links will result in unformatted output.
| Input | Output |
|---|---|
{{date|23007-031-24}}
|
23007-031-24 |
{{date|[[1 December]] [[2008]]|YMD}}
|
1 December 2008 |
{{date|1 December [[2008 in film|2008]]|MDY}}
|
1 December 2008 |
{{date|2008 December 1|DMY}}
|
2008 December 1 (expected: ༡ སྤྱི་ཟླ་བཅུ་གཉིས་པ། ༢༠༠༨) |
{{date|2008 December 1|MDY}}
|
2008 December 1 (expected: སྤྱི་ཟླ་བཅུ་གཉིས་པ། ༡, ༢༠༠༨) |
{{date|2008 December 1|ISO}}
|
2008 December 1 (expected: ༢༠༠༨-༡༢-༠༡) |
{{date|June 2006|ISO}}
|
སྤྱི་ཟླ་དྲུག་པ། ༢༠༠༦ (missing day, expected: 2006-06--) |
{{date|--08-24}}
|
--08-24 |
{{date|-08-24}}
|
༡༨ སྤྱི་ཟླ་དང་པ། ༢༠༢༦ |
{{date|08-24}}
|
08-24 |
{{date|2006-08--}}
|
2006-08-- |
{{date|2006-08-}}
|
2006-08- |
{{date|32 Aug}}
|
32 Aug |
{{date|932 Aug}}
|
932 Aug |
{{date|0932 Aug}}
|
༡ སྤྱི་ཟླ་བརྒྱད་པ། ༠༩༣༢ |
{{date|Aug 32}}
|
Aug 32 |
{{date|Aug 932}}
|
Aug 932 |
{{date|Aug 0932}}
|
སྤྱི་ཟླ་བརྒྱད་པ། ༠༩༣༢ |
{{date|31/05/2012}}
|
31/05/2012 (expected ༣༡ སྤྱི་ཟླ་ལྔ་པ། ༢༠༡༢) |
{{date|05-31-2012}}
|
05-31-2012 (expected ༣༡ སྤྱི་ཟླ་ལྔ་པ། ༢༠༡༢) |
{{date|May 18, 2019|YDM}}
|
༡༨ སྤྱི་ཟླ་ལྔ་པ། ༢༠༡༩ (expected ༢༠༡༩ ༡༨ སྤྱི་ཟླ་ལྔ་པ།) |
Known issues
[ཞུན་དག]Out-of-range values are "fixed"
- The PHP library, that this template ultimately depends on, converts out-of-range values to the next-best in-range values. As a result, some date-like values that are not actually valid dates get converted anyway. These include...
- all dates with zero day-of-the-month. Such a "zero-th" day of a month gets converted into the last day of the previous month.For example,
{{date|June 0, 2006}}results in༣༡ སྤྱི་ཟླ་ལྔ་པ། ༢༠༠༦.Similarly,{{date|0 January 2006}}becomes༣༡ སྤྱི་ཟླ་བཅུ་གཉིས་པ། ༢༠༠༥. - all dates with day-number values that exceed the number of days in the specified month cause the date to be incremented into the next month.For example,
{{date|31 November 2008}}results in༡ སྤྱི་ཟླ་བཅུ་གཉིས་པ། ༢༠༠༨, since November has only 30 days.Similarly,{{date|February 29, 2007}}results in༡ སྤྱི་ཟླ་གསུམ་པ། ༢༠༠༧, since 2007 was not a leap year.Note: Due to a parser peculiarity in the PHP library, 'December 32' and '32 December' are treated differently, and the latter results in an error (which causes this template to emit it unchanged), and only the former "overflows" into the next month.
- all dates with zero day-of-the-month. Such a "zero-th" day of a month gets converted into the last day of the previous month.
Non-Gregorian dates are treated as Gregorian
- The PHP library that this template ultimately depends on assumes that all dates, irrespective of context, are Gregorian calendar dates. Consequently:
- some dates that would be valid in a non-Gregorian context are treated as out-of-range dates and converted to the next-best in-range values. For example,
{{date|30 February 1712}}results in༡ སྤྱི་ཟླ་གསུམ་པ། ༡༧༡༢because – even though 30 February 1712 is a valid date in the Swedish calendar – February 1712 had only 29 days in the Gregorian calendar. - ten dates are not reformatted. These are 29 February and 1 March of the years 1000, 1100, 1300, 1400, 1500. The cause of this is the same as that of the Swedish 30 February 1712.
- some dates that would not be valid in some contexts are converted normally. For example, 29 February 1912 or 1 February 1918 are not valid in a Russian context, but perfectly valid in the Gregorian one.
- some dates that would be valid in a non-Gregorian context are treated as out-of-range dates and converted to the next-best in-range values. For example,
ISO 8601 format not suitable for years before 1583
- The ISO 8601 standard requires mutual agreement between those using the format to use years earlier than 1583. Since no agreement has been obtained from our readers, that format should not be used for such years, nor for any date not in the Gregorian calendar.
Output provided for ISO dates when year is missing
- The current 2004 version of ISO 8601 does not permit omitting the year, but this template will produce a supposedly ISO output when the year is missing.
Does not provide Microformats
- hCalendar and hCard microformats have various date properties, which are not emitted by this template. Use {{Start date}}, {{End date}}, {{Birth date}} or one of their variants, as necessary, in infoboxes which allow microformat-compatible date templates.
See also
[ཞུན་དག]Template:Date and time templates
Converts dates into a format used on Wikipedia
| Parameter | Description | Type | Status | |
|---|---|---|---|---|
| date | 1 | Date to be formatted
| Date | suggested |
| format | 2 | Controls the date format for the result
| String | suggested |