ഫലകം:Date table sorting
This template is used on approximately 40,000 pages and changes may be widely noticed. Test changes in the template's /sandbox or /testcases subpages, or in your own user subpage. Consider discussing changes on the talk page before implementing them. |
Please check that you do actually need this template before using it. Default date sorting does not work for spelled-out month–year or year–month combos and dates before the year 100, but it works in most other circumstances. For more information, see Help:Sorting § Date sorting problems. |
This template should not be used in citation templates such as Citation Style 1 and Citation Style 2, because it includes markup that will pollute the COinS metadata they produce; see Wikipedia:COinS. |
This template uses Lua: |
Date table sorting is used to correctly sort and display dates in a sortable table (see Help:Sorting).
What it solves
[തിരുത്തുക]Dates in their customary formats, if simply treated as alphanumeric text strings, sort in nonsensical ways:
- 1 September 1998 sorts alphanumerically before 5 March 1967, because 1 is less than 5;
- February 5, 1922 sorts alphanumerically before January 3, 1922, because F comes before J.
Use of the YYYY-MM-DD format would solve this problem, but with minor exceptions that format is not used in articles (see WP:DATEFORMAT).
This template automatically attaches a "hidden key" to dates, causing them to sort correctly while still being displayed in one of the customary display formats such as February 5, 1922 or 5 Feb 1922.
Parameters
[തിരുത്തുക]Dates
[തിരുത്തുക]{{Date table sorting|year|month|day|BC}} | {{Date table sorting|date}} |
---|---|
|
|
input style | input code | hidden sort key | visible output |
---|---|---|---|
{{Date table sorting|year}} | {{Date table sorting|1893}}
|
1893 | |
{{Date table sorting|-89}}
|
89 BC | ||
{{Date table sorting|-10000}}
|
10,000 BC | ||
{{Date table sorting|-1}}
|
1 BC | ||
{{Date table sorting| 1}}
|
1 (Note that year 0 does not exist and gives error message) | ||
{{Date table sorting|month}} | {{Date table sorting|Oct}}
|
Error in Template:Date table sorting: 'Oct' is an invalid date | Error in Template:Date table sorting: 'Oct' is an invalid date |
{{Date table sorting|month year}} | {{Date table sorting|February 1767}}
|
Error in Template:Date table sorting: 'February 1767' is an invalid date | Error in Template:Date table sorting: 'February 1767' is an invalid date |
{{Date table sorting|day month year}} | {{Date table sorting|12 Aug 1987}}
|
Error in Template:Date table sorting: '12 Aug 1987' is an invalid date | Error in Template:Date table sorting: '12 Aug 1987' is an invalid date |
{{Date table sorting|month day, year}} | {{Date table sorting|July 1, 1867}}
|
Error in Template:Date table sorting: 'July 1, 1867' is an invalid date | Error in Template:Date table sorting: 'July 1, 1867' is an invalid date |
{{Date table sorting|day month}} | {{Date table sorting|25 October}}
|
Error in Template:Date table sorting: '25 October' is an invalid date | Error in Template:Date table sorting: '25 October' is an invalid date |
{{Date table sorting|month day}} | {{Date table sorting|Jan 1}}
|
Error in Template:Date table sorting: 'Jan 1' is an invalid date | Error in Template:Date table sorting: 'Jan 1' is an invalid date |
{{Date table sorting|YYYY-MM-DD}} | {{Date table sorting|2014-12-09}}
|
ഡിസംബർ 9, 2014 | |
{{Date table sorting|DD-MM-YYYY}} | {{Date table sorting|15-05-2019}}
|
15 മേയ് 2019 | |
{{Date table sorting|year|month}} | {{Date table sorting|1990|10}}
|
ഒക്ടോബർ 1990 | |
{{Date table sorting|1980|Dec}}
|
Error in Template:Date table sorting: 'Dec' is not a valid month | Error in Template:Date table sorting: 'Dec' is not a valid month | |
{{Date table sorting|1970|August}}
|
Error in Template:Date table sorting: 'August' is not a valid month | Error in Template:Date table sorting: 'August' is not a valid month | |
{{Date table sorting|year|month|day}} | {{Date table sorting|2024|Jun|12}}
|
Error in Template:Date table sorting: 'Jun' is not a valid month | Error in Template:Date table sorting: 'Jun' is not a valid month |
{{Date table sorting|-204|11|22}}
|
നവംബർ 22, 204 BC | ||
{{Date table sorting|year|month|day|era}} | {{Date table sorting|44|3|15|BC}}
|
മാർച്ച് 15, 44 BC | |
{{Date table sorting|94|Oct|17|AD}}
|
Error in Template:Date table sorting: 'Oct' is not a valid month | Error in Template:Date table sorting: 'Oct' is not a valid month | |
{{Date table sorting|month}} | {{Date table sorting||May}}
|
Error in Template:Date table sorting: 'May' is not a valid month | Error in Template:Date table sorting: 'May' is not a valid month |
{{Date table sorting|month|day}} | {{Date table sorting||Sep|12}}
|
Error in Template:Date table sorting: 'Sep' is not a valid month | Error in Template:Date table sorting: 'Sep' is not a valid month |
Formatting
[തിരുത്തുക]Using format
produces a format that depends on, but is not necessarily equal to the format of the supplied date. The format
parameter can take nine values.
value | function | input code | hidden sort key | visible output |
---|---|---|---|---|
format depends on the input | {{Date table sorting|26 Jan 1788}}
|
Error in Template:Date table sorting: '26 Jan 1788' is an invalid date | Error in Template:Date table sorting: '26 Jan 1788' is an invalid date | |
{{Date table sorting|March 12, 1557}}
|
Error in Template:Date table sorting: 'March 12, 1557' is an invalid date | Error in Template:Date table sorting: 'March 12, 1557' is an invalid date | ||
{{Date table sorting|1975-02-13}}
|
ഫെബ്രുവരി 13, 1975 | |||
dmy |
displays the date in day-month-year format | {{Date table sorting|Sep 13, 1888|format=dmy}}
|
Error in Template:Date table sorting: 'Sep 13, 1888' is an invalid date | Error in Template:Date table sorting: 'Sep 13, 1888' is an invalid date |
{{Date table sorting|1983-01-03|format=dmy}}
|
3 ജനുവരി 1983 | |||
dm |
displays only the day and month in day-month format | {{Date table sorting|Feb 26, 1788|format=dm}}
|
Error in Template:Date table sorting: 'Feb 26, 1788' is an invalid date | Error in Template:Date table sorting: 'Feb 26, 1788' is an invalid date |
{{Date table sorting|2020-10-15|format=dm}}
|
15 ഒക്ടോബർ | |||
mdy |
displays the date in month-day-year format | {{Date table sorting|August 31, 1901|format=mdy}}
|
Error in Template:Date table sorting: 'August 31, 1901' is an invalid date | Error in Template:Date table sorting: 'August 31, 1901' is an invalid date |
{{Date table sorting|2006-11-08|format=mdy}}
|
നവംബർ 8, 2006 | |||
md |
displays only the day and month in month-day format | {{Date table sorting|26 Jun 1988|format=md}}
|
Error in Template:Date table sorting: '26 Jun 1988' is an invalid date | Error in Template:Date table sorting: '26 Jun 1988' is an invalid date |
{{Date table sorting|2002-02-27|format=md}}
|
ഫെബ്രുവരി 27 | |||
my |
displays only the month and year in month-year format | {{Date table sorting|16 November 1488|format=my}}
|
Error in Template:Date table sorting: '16 November 1488' is an invalid date | Error in Template:Date table sorting: '16 November 1488' is an invalid date |
d |
displays only the day | {{Date table sorting|6 July 1666|format=d}}
|
Error in Template:Date table sorting: '6 July 1666' is an invalid date | Error in Template:Date table sorting: '6 July 1666' is an invalid date |
m |
displays only the month | {{Date table sorting|1980-02-12|format=m}}
|
ഫെബ്രുവരി | |
y |
displays only the year | {{Date table sorting|-26|Jan|18|format=y}}
|
Error in Template:Date table sorting: 'Jan' is not a valid month | Error in Template:Date table sorting: 'Jan' is not a valid month |
hide |
hides the date | {{Date table sorting|15 October 1800|format=hide}}
|
Error in Template:Date table sorting: '15 October 1800' is an invalid date | Error in Template:Date table sorting: '15 October 1800' is an invalid date |
Abbreviation
[തിരുത്തുക]There are two ways of abbreviating the month name.
- Directly input an abbreviated month name.
- Use the
abbr=on
parameter.
abbreviation method | input code | hidden sort key | visible output |
---|---|---|---|
none | {{Date table sorting|2000-01-01}}
|
ജനുവരി 1, 2000 | |
{{Date table sorting|2000|1|1}}
|
ജനുവരി 1, 2000 | ||
{{Date table sorting|1 January 2000}}
|
Error in Template:Date table sorting: '1 January 2000' is an invalid date | Error in Template:Date table sorting: '1 January 2000' is an invalid date | |
{{Date table sorting|2000|January|1}}
|
Error in Template:Date table sorting: 'January' is not a valid month | Error in Template:Date table sorting: 'January' is not a valid month | |
abbreviated input | {{Date table sorting|1 Jan 2000}}
|
Error in Template:Date table sorting: '1 Jan 2000' is an invalid date | Error in Template:Date table sorting: '1 Jan 2000' is an invalid date |
{{Date table sorting|2000|Jan|1}}
|
Error in Template:Date table sorting: 'Jan' is not a valid month | Error in Template:Date table sorting: 'Jan' is not a valid month | |
abbr=on |
{{Date table sorting|1 January 2000|abbr=on}}
|
Error in Template:Date table sorting: '1 January 2000' is an invalid date | Error in Template:Date table sorting: '1 January 2000' is an invalid date |
{{Date table sorting|2000|January|1|abbr=on}}
|
Error in Template:Date table sorting: 'January' is not a valid month | Error in Template:Date table sorting: 'January' is not a valid month | |
{{Date table sorting|2000-01-01|abbr=on}}
|
ജനു 1, 2000 | ||
{{Date table sorting|2000|1|1|abbr=on}}
|
ജനു 1, 2000 |
Additional sort key
[തിരുത്തുക]In case two dates in a table are identical they may be ordered using the addkey
parameter.
input code | hidden sort key | visible output |
---|---|---|
{{Date table sorting|2010-10-10|addkey=3}}
|
ഒക്ടോബർ 10, 2010 | |
{{Date table sorting|2010-10-09}}
|
ഒക്ടോബർ 9, 2010 | |
{{Date table sorting|2010-10-10|addkey=1}}
|
ഒക്ടോബർ 10, 2010 | |
{{Date table sorting|2010-10-10}}
|
ഒക്ടോബർ 10, 2010 | |
{{Date table sorting|2010-10-10|addkey=4}}
|
ഒക്ടോബർ 10, 2010 | |
{{Date table sorting|2010-10-11}}
|
ഒക്ടോബർ 11, 2010 | |
{{Date table sorting|2010-10-10|addkey=2}}
|
ഒക്ടോബർ 10, 2010 |
Wrapping
[തിരുത്തുക]To turn off the suppression of word wraps, use the nowrap=off
parameter.
TemplateData
[തിരുത്തുക]Date table sorting is used to correctly sort and display dates in a sortable table.
ചരം | വിവരണം | തരം | സ്ഥിതി | |
---|---|---|---|---|
Full date or year | 1 | Full date if second to fourth parameters are not specfied, otherwise year. Full date can be either in "YYYY-MM-DD", "DD-MM-YYYY", "DD Month YYYY", "Month DD, YYYY", "YYYY-MM", "DD Month", "Month DD", "Month YYYY" or "Month" format. Year is either a positive number or a negative number. If fourth parameter is not specified negative numbers are interpreted as years of BC era. Parameter is optional if the second parameter is specified.
| പദം | ഐച്ഛികം |
Month | 2 | Full or abbreviated month name or alternatively, a month number which can be zero-padded. Parameter is optional if the third parameter is not specified.
| പദം | ഐച്ഛികം |
Day | 3 | Day, optionally zero-padded
| എണ്ണം | ഐച്ഛികം |
Era | 4 | BC, AD, BCE or CE. Takes effect only if the first parameter is a positive number. | പദം | ഐച്ഛികം |
Format | format | Controls the output format. Can be "dmy", "dm", "mdy", "md", "my", "d", "m", "y" or "hide". | പദം | ഐച്ഛികം |
Abbreviation | abbr | Abbreviates the month name
| പദം | ഐച്ഛികം |
Additional sort key | addkey | Adds another sort key to resolve conflicts between rows with the same date
| എണ്ണം | ഐച്ഛികം |
Wrapping | nowrap | To turn off the suppression of word wraps, use the "off" parameter
| ബൂളിയൻ | ഐച്ഛികം |
Notes
[തിരുത്തുക]Sorting for incomplete dates
[തിരുത്തുക]- Whole months or years
- A whole year or month (and year) is sorted according to its first day.
- Missing years
- If the year is not specified, the date will be sorted as if the year were the current year.
- Blank dates
- For no date input at all, the maximum possible sort key is used, so the entry will sort last.
Error handling
[തിരുത്തുക]Errors are tracked in Category:Date table sorting templates with errors.
Calendar choice
[തിരുത്തുക]The template is not capable of distinguishing Julian and Gregorian calendar dates. Also, it is not capable of taking a date in one calendar as input and outputting a date in the other calendar. Thus, to insure proper sorting, editors must either use one calendar for all dates, or pick a specific changeover date (for example, deciding that 4 October 1582 is Julian and all later dates are Gregorian); this would be done on an article-by article basis. Editors are also responsible for explaining to the reader whether the visible dates are Julian or Gregorian, if there is any possibility of confusion.
Linking
[തിരുത്തുക]The template formerly linked dates automatically, with link=off
used to suppress linking. In accordance with current guidelines linking of dates is no longer supported and instances of link=off
should be removed.
See also
[തിരുത്തുക]- {{sort}}, sorting by a specified key (also good for complicated numbers, e.g. scientific notation)
- {{sortname}}, full name sorting (using "last name, first name" as default sort key)
- {{tts}}, for sorting times in result tables of athletic events (only needed in certain cases - see template documentation)
- {{Number table sorting}}, for numbers
മുകളിൽ കാണുന്ന വിവരണം ഫലകം:Date table sorting/doc എന്ന ഉപതാളിൽ നിന്ന് ഉൾപ്പെടുത്തിയിട്ടുള്ളതാണ്. (തിരുത്തുക | നാൾവഴി) താങ്കൾക്ക് പരീക്ഷണങ്ങൾ ഫലകത്തിന്റെ എഴുത്തുകളരി (നിർമ്മിക്കുക) താളിലോ testcases (നിർമ്മിക്കുക) താളിലോ നടത്താവുന്നതാണ്. ദയവായി വർഗ്ഗങ്ങളും ബഹുഭാഷാകണ്ണികളും /വിവരണം ഉപതാളിൽ മാത്രം ഇടുക. ഈ ഫലകത്തിന്റെ ഉപതാളുകൾ. |