Help:Magic Words: Difference between revisions

m (Adjust to our formatting)
(Updating from http://www.mediawiki.org/wiki/Help:Magic_words)
 
Line 7: Line 7:
There are three general types of magic words:
There are three general types of magic words:
*'''[[#Behavior switches|Behavior switches]]''': these are uppercase words surrounded by double underscores, ''e.g.'' '''__FOO__'''
*'''[[#Behavior switches|Behavior switches]]''': these are uppercase words surrounded by double underscores, ''e.g.'' '''__FOO__'''
*'''[[#Variables|Variables]]''': these are uppercase words surrounded by double braces, ''e.g.'' '''<tt><tt><nowiki>{{FOO}}</nowiki></tt></tt>'''. As such, they look a lot like [[Help:Templates|templates]].
*'''[[#Variables|Variables]]''': these are uppercase words surrounded by double braces, ''e.g.'' '''<code><nowiki>{{FOO}}</nowiki></code>'''. As such, they look a lot like [[Help:Templates|templates]].
*'''[[#Parser functions|Parser functions]]''': these take parameters and are either of the form '''<tt><tt><nowiki>{{foo:...}}</nowiki></tt></tt>''' or '''<tt><tt><nowiki>{{#foo:...}}</nowiki></tt></tt>'''. See also {{mediawiki|Help:Extension:ParserFunctions}}.
*'''[[#Parser functions|Parser functions]]''': these take parameters and are either of the form '''<code><nowiki>{{foo:...}}</nowiki></code>''' or '''<code><nowiki>{{#foo:...}}</nowiki></code>'''. See also {{mediawiki|Help:Extension:ParserFunctions}}.


Page-dependent magic words will affect or return data about the ''current'' page (by default), even if the word is added through a transcluded template or included system message.
Page-dependent magic words will affect or return data about the ''current'' page (by default), even if the word is added through a transcluded template or included system message.


==Behavior switches==
==Behavior switches==
A behavior switch controls the layout or behaviour of the page and can often be used to specify desired omissions and inclusions in the content.
A behavior switch controls the layout or behavior of the page and can often be used to specify desired omissions and inclusions in the content.


{| class="prettytable"
{| class="wikitable"
|-
|-
!| Word
! {{Hl2}}| Word
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| colspan="3"| '''Table of contents'''
! {{Hl3}} colspan="3"| '''[[Table of contents]]'''
|-
|-
| <nowiki>__NOTOC__</nowiki>
| <code><nowiki>__NOTOC__</nowiki></code>
| Hides the table of contents (TOC).
| Hides the [[table of contents]] (TOC).
|
|
|-
|-
|<nowiki>__FORCETOC__</nowiki>
| <code><nowiki>__FORCETOC__</nowiki></code>
| Forces the table of content to appear at its normal position (above the first header).
| Forces the table of contents to appear at its normal position (above the first header).
|
|
|-
|-
| <nowiki>__TOC__</nowiki>
| <code><nowiki>__TOC__</nowiki></code>
| Places a table of contents at the word's current position (overriding <nowiki>__NOTOC__</nowiki>). If this is used multiple times, the table of contents will appear at the first word's position.
| Places a table of contents at the word's current position (overriding <code><nowiki>__NOTOC__</nowiki></code>). If this is used multiple times, the table of contents will appear at the first word's position.
|
|
|-
|-
| colspan="3"| '''Editing'''
! {{Hl3}} colspan="3"| '''Editing'''
|-
|-
| <nowiki>__NOEDITSECTION__</nowiki>
| <code><nowiki>__NOEDITSECTION__</nowiki></code>
| Hides the section edit links beside headings.
| Hides the section edit links beside headings. This is especially useful, where a heading is created from within a template: the normal wiki section-edit would in this case edit the template code, which is normally counterintuitive to the user. If a template contains multiple headings, it may be necessary to add "__NOEDITSECTION__" after each heading.
|
|
|-
|-
| <nowiki>__NEWSECTIONLINK__</nowiki>
| <code><nowiki>__NEWSECTIONLINK__</nowiki></code>
| Adds a link ([[MediaWiki:Addsection|"+" by default]]) beside the "edit" tab for adding a new section on a non-talk page (see {{mediawiki|m:Help:Section#Adding a section at the end|Adding a section to the end}}).
| Adds a link ([[MediaWiki:Addsection|"+" by default]]) beside the "edit" tab for adding a new section on a non-talk page (see {{mediawiki|m:Help:Section#Adding a section at the end|Adding a section to the end}}).
| 1.7+
| 1.7+
|-
|-
| <nowiki>__NONEWSECTIONLINK__</nowiki>
| <code><nowiki>__NONEWSECTIONLINK__</nowiki></code>
| Removes the link beside the "edit" tab on pages in talk namespaces.
| Removes the link beside the "edit" tab on pages in talk namespaces.
| {{mediawiki|rev:47522|1.15+}}
| {{mediawiki|rev:47522|1.15+}}
|-
|-
| colspan="3"| '''Categories'''
! {{Hl3}} colspan="3"| '''Categories'''
|-
|-
| <nowiki>__NOGALLERY__</nowiki>
| <code><nowiki>__NOGALLERY__</nowiki></code>
| Used on a category page, replaces thumbnails in the category view with normal links.
| Used on a category page, replaces thumbnails in the category view with normal links.
| 1.7+
| 1.7+
|-
|-
| <nowiki>__HIDDENCAT__</nowiki>
| <code><nowiki>__HIDDENCAT__</nowiki></code>
| Used on a category page, hides the category from the lists of categories in its members and parent categories (there is an option in the [[Help:Preferences|user preferences]] to show them).<!-- hiddencategory hiddencat hide category categories -->
| Used on a category page, hides the category from the lists of categories in its members and parent categories (there is an option in the [[Help:Preferences|user preferences]] to show them).<!-- hiddencategory hiddencat hide category categories -->
| 1.13+
| 1.13+
|-
|-
| colspan="3"| '''Language conversion'''
! {{Hl3}} colspan="3"| '''Language conversion'''
|-
|-
| <nowiki>__NOCONTENTCONVERT__</nowiki><br /><nowiki>__NOCC__</nowiki>
| <code><nowiki>__NOCONTENTCONVERT__</nowiki></code> <br /> <code><nowiki>__NOCC__</nowiki></code>
| On wikis with language variants, don't perform any content language conversion (character and phase) in article display; for example, only show Chinese (zh) instead of variants like zh_cn, zh_tw, zh_sg, or zh_hk.
| On wikis with language variants, don't perform any content language conversion (character and phase) in article display; for example, only show Chinese (zh) instead of variants like zh_cn, zh_tw, zh_sg, or zh_hk.
|
|
|-
|-
| <nowiki>__NOTITLECONVERT__</nowiki><br /><nowiki>__NOTC__</nowiki>
| <code><nowiki>__NOTITLECONVERT__</nowiki></code> <br /> <code><nowiki>__NOTC__</nowiki></code>
| On wikis with language variants, don't perform language conversion on the title (all other content is converted).
| On wikis with language variants, don't perform language conversion on the title (all other content is converted).
|
|  
|-
|-
| colspan="3"| '''Other'''
! {{Hl3}} colspan="3"| '''Other'''
|-
|-
| <nowiki>__START__</nowiki>
| <code><nowiki>__START__</nowiki></code>
| No effect.
| No effect.
|
|
|-
|-
| <nowiki>__END__</nowiki>
| <code><nowiki>__END__</nowiki></code>
| Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. Removed in {{mediawiki|rev:19213|19213}}.
| Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. Removed in {{mediawiki|rev:19213|19213}}.
| 1.1 - 1.8
| 1.1–1.8
|-
|-
| <nowiki>__INDEX__</nowiki>
| <code><nowiki>__INDEX__</nowiki></code>
| Tell search engines to index the page (overrides {{mediawiki|Manual:$wgArticleRobotPolicies|$wgArticleRobotPolicies}}, but not robots.txt).
| Tell search engines to index the page (overrides {{mediawiki|Manual:$wgArticleRobotPolicies|$wgArticleRobotPolicies}}, but not robots.txt).
| 1.14+
| 1.14+
|-
|-  
| <nowiki>__NOINDEX__</nowiki>
| <code><nowiki>__NOINDEX__</nowiki></code>
| Tell search engines not to index the page (ie, do not list in search engines' results).
| Tell search engines not to index the page (ie, do not list in search engines' results).
| {{mediawiki|rev:37973|1.14+}}
| {{mediawiki|rev:37973|1.14+}}
|-
|-
| <nowiki>__STATICREDIRECT__</nowiki>
| <code><nowiki>__STATICREDIRECT__</nowiki></code>
| On redirect pages, don't allow MediaWiki to automatically update the link when someone moves a page and checks "Update any redirects that point to the original title".
| On redirect pages, don't allow MediaWiki to automatically update the link when someone moves a page and checks "Update any redirects that point to the original title".
| {{mediawiki|rev:37928|1.13+}}
| {{mediawiki|rev:37928|1.13+}}
Line 95: Line 95:
Variables return information about the current page, wiki, or date. Their syntax is similar to [[Help:Templates|templates]]. Variables marked as "<span style="background:#FED;">'''[expensive]'''</span>" are tracked by the software, and the number that can be included on a page is limited.
Variables return information about the current page, wiki, or date. Their syntax is similar to [[Help:Templates|templates]]. Variables marked as "<span style="background:#FED;">'''[expensive]'''</span>" are tracked by the software, and the number that can be included on a page is limited.


If a template name conflicts with a variable, the variable will be used (so to transclude the template [[{{ns:10}}:PAGENAME]] you would need to write <code><tt><nowiki>{{</nowiki>{{ns:10}}:PAGENAME<nowiki>}}</nowiki></tt></code>). In some cases, adding parameters will force the parser to treat a variable as a template; for example, <code><tt><nowiki>{{CURRENTDAYNAME|x}}</nowiki></tt></code> transcludes [[{{ns:10}}:CURRENTDAYNAME]].
If a template name conflicts with a variable, the variable will be used (so to transclude the template [[{{ns:10}}:PAGENAME]] you would need to write <code><nowiki>{{</nowiki>{{ns:10}}:PAGENAME<nowiki>}}</nowiki></code>). In some cases, adding parameters will force the parser to invoke a template; for example, <code><nowiki>{{CURRENTDAYNAME|x}}</nowiki></code> transcludes [[{{ns:10}}:CURRENTDAYNAME]], ''not'' the variable.


===Date & time===
===Date and time===
The following variables return the current date and time in UTC.
The following variables return the current date and time in UTC.


Due to MediaWiki and browser caching, these variables frequently show when the page was ''cached'' rather than the current time.
Due to MediaWiki and browser caching, these variables frequently show when the page was ''cached'' rather than the current time.


{| class="prettytable"
The date and time magic words are formatted in the wiki content language. Since {{r|94680|1.19}}, they depend on the [[page content language]].
 
{| class="wikitable"
|-
|-
!| Variable
! {{Hl2}}| Variable
!| Output
! {{Hl2}}| Output
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| colspan="4"| '''Year'''
! {{Hl3}} colspan="4"| '''Year'''
|-
|-
| <tt><nowiki>{{CURRENTYEAR}}</nowiki></tt>
| <code><nowiki>{{CURRENTYEAR}}</nowiki></code>
| {{CURRENTYEAR}}
| {{CURRENTYEAR}}
| Year
| Year
|
|
|-
|-
| colspan="4"| '''Month'''
! {{Hl3}} colspan="4"| '''Month'''
|-
|-
| <tt><nowiki>{{CURRENTMONTH}}</nowiki></tt>
| <code><nowiki>{{CURRENTMONTH}}</nowiki></code>  
| {{CURRENTMONTH}}
| {{CURRENTMONTH}}
| Month (zero-padded number)
| Month (zero-padded number)
|
|
|-
|-
| <tt><nowiki>{{CURRENTMONTHNAME}}</nowiki></tt>
| <code><nowiki>{{CURRENTMONTHNAME}}</nowiki></code>
| {{CURRENTMONTHNAME}}
| {{CURRENTMONTHNAME}}
| Month (name)
| Month (name)
|
|
|-
|-
| <tt><nowiki>{{CURRENTMONTHNAMEGEN}}</nowiki></tt>
| <code><nowiki>{{CURRENTMONTHNAMEGEN}}</nowiki></code>
| {{CURRENTMONTHNAMEGEN}}
| {{CURRENTMONTHNAMEGEN}}
| Month ([[w:genitive|genitive form]])
| Month ([[wikipedia:genitive|genitive form]])
|
|
|-
|-
| <tt><nowiki>{{CURRENTMONTHABBREV}}</nowiki></tt>
| <code><nowiki>{{CURRENTMONTHABBREV}}</nowiki></code>
| {{CURRENTMONTHABBREV}}
| {{CURRENTMONTHABBREV}}
| Month (abbreviation)
| Month (abbreviation)
| 1.5+
| 1.5+
|-
|-
| colspan="4"| '''Day'''
! {{Hl3}} colspan="4"| '''Day'''
|-
|-
| <tt><nowiki>{{CURRENTDAY}}</nowiki></tt>
| <code><nowiki>{{CURRENTDAY}}</nowiki></code>
| {{CURRENTDAY}}
| {{CURRENTDAY}}
| Day of the month (unpadded number)
| Day of the month (unpadded number)
|
|
|-
|-
| <tt><nowiki>{{CURRENTDAY2}}</nowiki></tt>
| <code><nowiki>{{CURRENTDAY2}}</nowiki></code>
| {{CURRENTDAY2}}
| {{CURRENTDAY2}}
| Day of the month (zero-padded number)
| Day of the month (zero-padded number)
| 1.6+
| 1.6+
|-
|-
| <tt><nowiki>{{CURRENTDOW}}</nowiki></tt>
| <code><nowiki>{{CURRENTDOW}}</nowiki></code>
| {{CURRENTDOW}}
| {{CURRENTDOW}}
| Day of the week (unpadded number)
| Day of the week (unpadded number), 0 (for Sunday) through 6 (for Saturday)
|
|
|-
|-
| <tt><nowiki>{{CURRENTDAYNAME}}</nowiki></tt>
| <code><nowiki>{{CURRENTDAYNAME}}</nowiki></code>
| {{CURRENTDAYNAME}}
| {{CURRENTDAYNAME}}
| Day of the week (name)
| Day of the week (name)
|
|
|-
|-
| colspan="4"| '''Time'''
! {{Hl3}} colspan="4"| '''Time'''
|-
|-
| <tt><nowiki>{{CURRENTTIME}}</nowiki></tt>
| <code><nowiki>{{CURRENTTIME}}</nowiki></code>
| {{CURRENTTIME}}
| {{CURRENTTIME}}
| Time (24-hour HH:mm format)
| Time (24-hour HH:mm format)
|
|
|-
|-
| <tt><nowiki>{{CURRENTHOUR}}</nowiki></tt>
| <code><nowiki>{{CURRENTHOUR}}</nowiki></code>
| {{CURRENTHOUR}}
| {{CURRENTHOUR}}
| Hour (24-hour zero-padded number)
| Hour (24-hour zero-padded number)
|
|
|-
|-
| colspan="4"| '''Other'''
! {{Hl3}} colspan="4"| '''Other'''
|-
|-
| <tt><nowiki>{{CURRENTWEEK}}</nowiki></tt>
| <code><nowiki>{{CURRENTWEEK}}</nowiki></code>
| {{CURRENTWEEK}}
| {{CURRENTWEEK}}
| Week (number)
| Week (number)
|
|
|-
|-
| <tt><nowiki>{{CURRENTTIMESTAMP}}</nowiki></tt>
| <code><nowiki>{{CURRENTTIMESTAMP}}</nowiki></code>
| {{CURRENTTIMESTAMP}}
| {{CURRENTTIMESTAMP}}
| YYYYMMDDHHmmss timestamp
| YYYYMMDDHHmmss timestamp
Line 186: Line 188:


The following variables do the same as the above, but using the site's server config or $wgLocaltimezone.
The following variables do the same as the above, but using the site's server config or $wgLocaltimezone.
* <tt><nowiki>{{LOCALYEAR}}</nowiki></tt>
* <code><nowiki>{{LOCALYEAR}}</nowiki></code>
* <tt><nowiki>{{LOCALMONTH}}</nowiki></tt>
* <code><nowiki>{{LOCALMONTH}}</nowiki></code>
* <tt><nowiki>{{LOCALMONTHNAME}}</nowiki></tt>
* <code><nowiki>{{LOCALMONTHNAME}}</nowiki></code>
* <tt><nowiki>{{LOCALMONTHNAMEGEN}}</nowiki></tt>
* <code><nowiki>{{LOCALMONTHNAMEGEN}}</nowiki></code>
* <tt><nowiki>{{LOCALMONTHABBREV}}</nowiki></tt>
* <code><nowiki>{{LOCALMONTHABBREV}}</nowiki></code>
* <tt><nowiki>{{LOCALDAY}}</nowiki></tt>
* <code><nowiki>{{LOCALDAY}}</nowiki></code>
* <tt><nowiki>{{LOCALDAY2}}</nowiki></tt>
* <code><nowiki>{{LOCALDAY2}}</nowiki></code>
* <tt><nowiki>{{LOCALDOW}}</nowiki></tt>
* <code><nowiki>{{LOCALDOW}}</nowiki></code>
* <tt><nowiki>{{LOCALDAYNAME}}</nowiki></tt>
* <code><nowiki>{{LOCALDAYNAME}}</nowiki></code>
* <tt><nowiki>{{LOCALTIME}}</nowiki></tt>
* <code><nowiki>{{LOCALTIME}}</nowiki></code>
* <tt><nowiki>{{LOCALHOUR}}</nowiki></tt>
* <code><nowiki>{{LOCALHOUR}}</nowiki></code>
* <tt><nowiki>{{LOCALWEEK}}</nowiki></tt>
* <code><nowiki>{{LOCALWEEK}}</nowiki></code>
* <tt><nowiki>{{LOCALTIMESTAMP}}</nowiki></tt>
* <code><nowiki>{{LOCALTIMESTAMP}}</nowiki></code>


:''For more thorough time formatting, you may want to install [[Extension:ParserFunctions]] to use the [[Help:Extension:ParserFunctions#.23time|#time parser function]]''
:''For more thorough time formatting, you may want to install [[Extension:ParserFunctions]] to use the [[Help:Extension:ParserFunctions#.23time|#time parser function]]''


===Technical metadata===
===Technical metadata===
Revision variables return data about the '''latest edit to the current page''', even if viewing an older version of the page.
''Note:'' Revision variables return data about the '''latest edit to the current page''', even if viewing an older version of the page.
{| class="prettytable"
{| class="wikitable"
|-
|-
!| Variable
! {{Hl2}}| Variable
!| Output
! {{Hl2}}| Output
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| colspan="4"| '''Site'''
! {{Hl3}} colspan="4"| '''Site'''
|-
|-
| <tt><nowiki>{{SITENAME}}</nowiki></tt>
| <code><nowiki>{{SITENAME}}</nowiki></code>
| {{SITENAME}}
| {{SITENAME}}
| The wiki's site name ({{mediawiki|Manual:$wgSitename|$wgSitename}}).
| The wiki's site name ({{mediawiki|Manual:$wgSitename|$wgSitename}}).
|
|
|-
|-
| <tt><nowiki>{{SERVER}}</nowiki></tt>
| <code><nowiki>{{SERVER}}</nowiki></code>
| {{SERVER}}
| {{SERVER}}
| domain URL ({{mediawiki|Manual:$wgServer|$wgServer}})
| domain URL ({{mediawiki|Manual:$wgServer|$wgServer}})
|
|
|-
|-
| <tt><nowiki>{{SERVERNAME}}</nowiki></tt>
| <code><nowiki>{{SERVERNAME}}</nowiki></code>
| {{SERVERNAME}}
| {{SERVERNAME}}
| domain name ({{mediawiki|Manual:$wgServerName|$wgServerName}})
| domain name (No longer dependent on {{mediawiki|Manual:$wgServerName|$wgServerName}} as of version 1.17)
| - 1.16
|
|-
|-
| <tt><nowiki>{{DIRMARK}}</nowiki></tt><br /><tt><nowiki>{{DIRECTIONMARK}}</nowiki></tt>
| <code><nowiki>{{DIRMARK}}</nowiki></code><br /><code><nowiki>{{DIRECTIONMARK}}</nowiki></code>
| {{DIRMARK}}<br />{{DIRECTIONMARK}}
| {{DIRMARK}}<br />{{DIRECTIONMARK}}
| Outputs a unicode-directional mark that matches the wiki's default language's direction (<code>&amp;lrm;</code> on left-to-right wikis, <code>&amp;rlm;</code> on right-to-left wikis), useful in text with multi-directional text.
| Outputs a unicode-directional mark that matches the wiki's default language's direction (<code>&amp;lrm;</code> on left-to-right wikis, <code>&amp;rlm;</code> on right-to-left wikis), useful in text with multi-directional text. Since {{r|94680|1.19}}, it depends on the [[page content language]].
| 1.7+
| {{r|14442|1.7+}}
|-
|-
| <tt><nowiki>{{SCRIPTPATH}}</nowiki></tt>
| <code><nowiki>{{SCRIPTPATH}}</nowiki></code>
| {{SCRIPTPATH}}
| {{SCRIPTPATH}}
| relative script path ({{mediawiki|Manual:$wgScriptPath|$wgScriptPath}})
| relative script path ({{mediawiki|Manual:$wgScriptPath|$wgScriptPath}})
|
|
|-
|-
| <tt><nowiki>{{STYLEPATH}}</nowiki></tt>
| <code><nowiki>{{STYLEPATH}}</nowiki></code>
| {{STYLEPATH}}
| {{STYLEPATH}}
| relative style path ({{mediawiki|Manual:$wgStylePath|$wgStylePath}})
| relative style path ({{mediawiki|Manual:$wgStylePath|$wgStylePath}})
| 1.16+
| 1.16+
|-
|-
| <tt><nowiki>{{CURRENTVERSION}}</nowiki></tt>
| <code><nowiki>{{CURRENTVERSION}}</nowiki></code>
| {{CURRENTVERSION}}
| {{CURRENTVERSION}}
| The wiki's MediaWiki version.
| The wiki's MediaWiki version.
| 1.7+
| {{r|14199|1.7+}}
|-
|-
| <tt><nowiki>{{CONTENTLANGUAGE}}</nowiki></tt><br /><tt><nowiki>{{CONTENTLANG}}</nowiki></tt>
| <code><nowiki>{{CONTENTLANGUAGE}}</nowiki></code><br /><code><nowiki>{{CONTENTLANG}}</nowiki></code>
| {{CONTENTLANGUAGE}}<br />{{CONTENTLANG}}
| {{CONTENTLANGUAGE}}<br />{{CONTENTLANG}}
| The wiki's default interface language ({{mediawiki|Manual:$wgLanguageCode|$wgLanguageCode}})
| The wiki's default interface language ({{mediawiki|Manual:$wgLanguageCode|$wgLanguageCode}})
| 1.7+
| {{r|14661|1.7+}}
|-
|-
| colspan="4"| '''Latest revision to current page'''
! {{Hl3}} colspan="4"| '''Latest revision to current page'''
|-
|-
| <tt><nowiki>{{REVISIONID}}</nowiki></tt>
| <code><nowiki>{{REVISIONID}}</nowiki></code>
| {{REVISIONID}}
| {{REVISIONID}}
| Unique revision ID
| Unique revision ID
| 1.5+
| 1.5+
|-
|-
| <tt><nowiki>{{REVISIONDAY}}</nowiki></tt>
| <code><nowiki>{{REVISIONDAY}}</nowiki></code>
| {{REVISIONDAY}}
| {{REVISIONDAY}}
| Day edit was made (unpadded number)
| Day edit was made (unpadded number)
| 1.8+
| 1.8+
|-
|-
| <tt><nowiki>{{REVISIONDAY2}}</nowiki></tt>
| <code><nowiki>{{REVISIONDAY2}}</nowiki></code>
| {{REVISIONDAY2}}
| {{REVISIONDAY2}}
| Day edit was made (zero-padded number)
| Day edit was made (zero-padded number)
| 1.8+
| 1.8+
|-
|-
| <tt><nowiki>{{REVISIONMONTH}}</nowiki></tt>
| <code><nowiki>{{REVISIONMONTH}}</nowiki></code>
| {{REVISIONMONTH}}
| {{REVISIONMONTH}}
| Month edit was made (zero-padded number)
| Month edit was made (zero-padded number as of {{mediawiki|rev:66200|1.17+}}, unpadded number in prior versions)
| 1.8+<br/>Changed to zero-padded number in {{mediawiki|rev:66200|1.17+}}
| 1.8+
<!--|-
|-
| <tt><nowiki>{{REVISIONMONTH1}}</nowiki></tt>
| <code><nowiki>{{REVISIONMONTH1}}</nowiki></code>
| {{REVISIONMONTH1}}
| {{REVISIONMONTH1}}
| Month edit was made (unpadded number)
| Month edit was made (unpadded number)
| {{mediawiki|rev:66200|1.17+}}-->
| {{mediawiki|rev:66200|1.17+}}
|-
|-
| <tt><nowiki>{{REVISIONYEAR}}</nowiki></tt>
| <code><nowiki>{{REVISIONYEAR}}</nowiki></code>
| {{REVISIONYEAR}}
| {{REVISIONYEAR}}
| Year edit was made
| Year edit was made
| 1.8+
| 1.8+
|-
|-
| <tt><nowiki>{{REVISIONTIMESTAMP}}</nowiki></tt>
| <code><nowiki>{{REVISIONTIMESTAMP}}</nowiki></code>
| {{REVISIONTIMESTAMP}}
| {{REVISIONTIMESTAMP}}
| Timestamp as of time of edit
| Timestamp as of time of edit
| 1.8+
| 1.8+
|-
|-
| <tt><nowiki>{{REVISIONUSER}}</nowiki></tt>
| <code><nowiki>{{REVISIONUSER}}</nowiki></code>
| {{REVISIONUSER}}
| {{REVISIONUSER}}
| The username of the user who made the most recent edit to the page
| The username of the user who made the most recent edit to the page, or the current user when previewing an edit
| {{mediawiki|rev:48149|1.15+}}
| {{mediawiki|rev:48149|1.15+}}
|-style="background:#FED;"
|-style="background:#FED;"
| <tt><nowiki>{{PAGESIZE:</nowiki>''page name''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{PAGESIZE:</nowiki>''page name''<nowiki>}}</nowiki></code><br /><code><nowiki>{{PAGESIZE:</nowiki>''page name''<nowiki>|R}}</nowiki>
| {{PAGESIZE:Help:Magic_words}}
| {{PAGESIZE:Help:Magic_words}}<br />{{PAGESIZE:Help:Magic_words|R}}
| '''[expensive]''' Returns the byte size of the specified page.
| '''[expensive]''' Returns the byte size of the specified page. Use "<code><nowiki>|R</nowiki></code>" to get raw numbers.
| {{mediawiki|rev:33551|1.13+}}
| {{mediawiki|rev:33551|1.13+}}
|-
|-
| <tt><nowiki>{{PROTECTIONLEVEL:</nowiki>''action''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{PROTECTIONLEVEL:</nowiki>''action''<nowiki>}}</nowiki></code>
| protection level
| <!-- Leave this empty. -->
| Outputs the protection level (e.g. 'autoconfirm', 'sysop') for a given action (e.g. 'edit', 'move') on the current page or an empty string if not protected.
| Outputs the protection level (e.g. 'autoconfirmed', 'sysop') for a given action (e.g. 'edit', 'move') on the current page or an empty string if not protected.
| {{mediawiki|rev:45587|1.15+}}
| {{mediawiki|rev:45587|1.15+}}
|-
|-
| colspan="4"| '''Affects page content'''
! {{Hl3}} colspan="4"| '''Affects page content'''
|-
|-
| <tt><nowiki>{{DISPLAYTITLE:</nowiki>''title''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{DISPLAYTITLE:</nowiki>''title''<nowiki>}}</nowiki></code>
|
|
| Format the current page's title header. The value must be equivalent to the default title: only capitalization changes and replacing spaces with underscores. It can be disabled or enabled by {{mediawiki|Manual:$wgAllowDisplayTitle|$wgAllowDisplayTitle}}; disabled by default before 1.10+, enabled by default thereafter.
| Format the current page's title header. The value must be equivalent to the default title: only capitalization changes and replacing spaces with underscores are allowed (this can be changed with {{manual|$wgRestrictDisplayTitle}}). It can be disabled or enabled by {{mediawiki|Manual:$wgAllowDisplayTitle|$wgAllowDisplayTitle}}; disabled by default before 1.10+, enabled by default thereafter.
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{DEFAULTSORTKEY:</nowiki>''sortkey''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{DEFAULTCATEGORYSORT:</nowiki>''sortkey''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<nowiki>}}</nowiki></code><br /><code><nowiki>{{DEFAULTSORTKEY:</nowiki>''sortkey''<nowiki>}}</nowiki></code><br /><code><nowiki>{{DEFAULTCATEGORYSORT:</nowiki>''sortkey''<nowiki>}}</nowiki></code><br/><code><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<nowiki>|noerror}}</nowiki></code><br/><code><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<nowiki>|noreplace}}</nowiki></code>
|
|
| Used for categorizing pages, sets a default [[Help:Categories|category sort key]]. For example if you put <tt><nowiki>{{DEFAULTSORT:Smith, John}}</nowiki></tt> at the end of [[John Smith]], the page would be sorted under "S" by default in categories.
| Used for categorizing pages, sets a default [[Help:Categories|category sort key]]. For example if you put <code><nowiki>{{DEFAULTSORT:Smith, John}}</nowiki></code> at the end of [[John Smith]], the page would be sorted under "S" by default in categories. It can take a second argument of ''noerror'' or ''noreplace'' to suppress error messages when multiple defaultsortkey's are used on one page or to make it do nothing if multiple defaultsortkey's are used.
| 1.10+
| 1.10+<br/>{{mediawiki|rev:96767|1.19+}} (for noerror and noreplace)
|}
|}


===Statistics===
===Statistics===
Numbers returned by these variables normally contain separators (commas or spaces, depending on the local language), but can return raw numbers with the ":R" flag (for example, <code><tt><nowiki>{{NUMBEROFPAGES}}</nowiki></tt></code> &rarr; {{NUMBEROFPAGES}} and <code><tt><nowiki>{{NUMBEROFPAGES:R}}</nowiki></tt></code> &rarr; {{NUMBEROFPAGES:R}}). Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example <code><tt><nowiki>{{PAGESINCATEGORY:Help}}</nowiki></tt></code> and <code><tt><nowiki>{{PAGESINCATEGORY:Help|R}}</nowiki></tt></code>).
Numbers returned by these variables normally contain separators (commas or spaces, depending on the local language), but can return raw numbers with the ":R" flag (for example, <code><nowiki>{{NUMBEROFPAGES}}</nowiki></code> &rarr; {{NUMBEROFPAGES}} and <code><nowiki>{{NUMBEROFPAGES:R}}</nowiki></code> &rarr; {{NUMBEROFPAGES:R}}). Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example <code><nowiki>{{PAGESINCATEGORY:Help}}</nowiki></code> and <code><nowiki>{{PAGESINCATEGORY:Help|R}}</nowiki></code>). Also applicable to <code><nowiki>{{PAGESIZE:</nowiki>''page name''<nowiki>}}</nowiki></code> above.
{| class="prettytable"
 
The number magic words are formatted in the wiki content language. Since {{r|94680|1.19}}, it depends on the [[page content language]].
 
{| class="wikitable"
|-
|-
!| Variable
! {{Hl2}}| Variable
!| Output
! {{Hl2}}| Output
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| colspan="4"| '''Entire wiki'''
! {{Hl3}} colspan="4"| '''Entire wiki'''
|-
|-
| <tt><nowiki>{{NUMBEROFPAGES}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFPAGES}}</nowiki></code>
| {{NUMBEROFPAGES}}
| {{NUMBEROFPAGES}}
| Number of wiki pages.
| Number of wiki pages.
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{NUMBEROFARTICLES}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFARTICLES}}</nowiki></code>
| {{NUMBEROFARTICLES}}
| {{NUMBEROFARTICLES}}
| Number of pages in {{mediawiki|Manual:Using custom namespaces#Content namespaces|content namespaces}}.
| Number of pages in {{mediawiki|Manual:Using custom namespaces#Content namespaces|content namespaces}}.
|
|
|-
|-
| <tt><nowiki>{{NUMBEROFFILES}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFFILES}}</nowiki></code>
| {{NUMBEROFFILES}}
| {{NUMBEROFFILES}}
| Number of uploaded files.
| Number of uploaded files.
| 1.5+
| 1.5+
|-
|-
| <tt><nowiki>{{NUMBEROFEDITS}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFEDITS}}</nowiki></code>
| {{NUMBEROFEDITS}}
| {{NUMBEROFEDITS}}
| Number of page edits.
| Number of page edits.
| {{mediawiki|rev:21319|1.10+}}
| {{mediawiki|rev:21319|1.10+}}
|-
|-
| <tt><nowiki>{{NUMBEROFVIEWS}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFVIEWS}}</nowiki></code>
| {{NUMBEROFVIEWS}}
| {{NUMBEROFVIEWS}}
| Number of page views. Usually useless on a wiki using [[Manual:Cache|caching]].
| Number of page views. Usually useless on a wiki using [[Manual:Cache|caching]].
| {{mediawiki|rev:42721|1.14+}}
| {{mediawiki|rev:42721|1.14+}}
|-
|-
| <tt><nowiki>{{NUMBEROFUSERS}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFUSERS}}</nowiki></code>
| {{NUMBEROFUSERS}}
| {{NUMBEROFUSERS}}
| Number of registered users.
| Number of registered users.
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{NUMBEROFADMINS}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFADMINS}}</nowiki></code>
| {{NUMBEROFADMINS}}
| {{NUMBEROFADMINS}}
| Number of users in the ''sysop'' {{mediawiki|Manual:User rights|group}}.
| Number of users in the ''sysop'' {{mediawiki|Manual:User rights|group}}.
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{NUMBEROFACTIVEUSERS}}</nowiki></tt>
| <code><nowiki>{{NUMBEROFACTIVEUSERS}}</nowiki></code>
| {{NUMBEROFACTIVEUSERS}}
| {{NUMBEROFACTIVEUSERS}}
| Number of active users, based on the criteria used in [[Special:Statistics]].
| Number of active users, based on the criteria used in [[Special:Statistics]].
| {{mediawiki|rev:47392|1.15+}}
| {{mediawiki|rev:47392|1.15+}}
|-style="background:#FED;"
|-style="background:#FED;"
| <tt><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{PAGESINCAT:Help}}</nowiki></tt>
| <code><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<nowiki>}}</nowiki></code><br /><code><nowiki>{{PAGESINCAT:Help}}</nowiki></code>
| {{PAGESINCATEGORY:Help}}<br />{{PAGESINCAT:Help}}
| {{PAGESINCATEGORY:Help}}<br />{{PAGESINCAT:Help}}
| '''[expensive]''' Number of pages in the given [[Help:Categories|category]] (replace "Help" with the relevant category name).
| '''[expensive]''' Number of pages in the given [[Help:Categories|category]].
| {{mediawiki|rev:32932|1.13+}}
| {{mediawiki|rev:32932|1.13+}}
|-
|-
| <tt><nowiki>{{NUMBERINGROUP:</nowiki>''groupname''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{NUMINGROUP:</nowiki>''groupname''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{NUMBERINGROUP:</nowiki>''groupname''<nowiki>}}</nowiki></code><br /><code><nowiki>{{NUMINGROUP:</nowiki>''groupname''<nowiki>}}</nowiki></code>
| {{NUMBERINGROUP:bureaucrat}}<br />{{NUMINGROUP:bureaucrat}}<br /><small><nowiki>({{NUMBERINGROUP:bureaucrat}} used here)</nowiki></small>
| {{NUMBERINGROUP:bureaucrat}}<br />{{NUMINGROUP:bureaucrat}}<br /><small><nowiki>({{NUMBERINGROUP:bureaucrat}} used here)</nowiki></small>
| Number of users in a specific {{mediawiki|Manual:User rights|group}}.
| Number of users in a specific {{mediawiki|Manual:User rights|group}}.
| {{mediawiki|rev:40116|1.14+}}
| {{mediawiki|rev:40116|1.14+}}
|-
|-
| <tt><nowiki>{{PAGESINNS:</nowiki>''index''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{PAGESINNAMESPACE:</nowiki>''index''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{PAGESINNS:</nowiki>''index''<nowiki>}}</nowiki></code><br /><code><nowiki>{{PAGESINNAMESPACE:</nowiki>''index''<nowiki>}}</nowiki></code>
| ''not enabled''
| ''not enabled''
| Number of pages in the given [[Help:Namespaces|namespace]] (replace ''index'' with the relevant [[Manual:Namespace|namespace index]]). For instance, <tt><nowiki>{{PAGESINNAMESPACE:</nowiki>''14''<nowiki>}}</nowiki></tt> will output the number of category pages. <tt><nowiki>{{PAGESINNS:0}}</nowiki></tt> differs from <tt><nowiki>{{NUMBEROFARTICLES}}</nowiki></tt> in that the former includes redirects and disambiguation pages. Disabled by default, enable with {{mediawiki|Manual:$wgAllowSlowParserFunctions|$wgAllowSlowParserFunctions}}.
| Number of pages in the given [[Help:Namespaces|namespace]] (replace ''index'' with the relevant [[Manual:Namespace|namespace index]]). For instance, <code><nowiki>{{PAGESINNAMESPACE:</nowiki>''14''<nowiki>}}</nowiki></code> will output the number of category pages. <code><nowiki>{{PAGESINNS:0}}</nowiki></code> differs from <code><nowiki>{{NUMBEROFARTICLES}}</nowiki></code> in that the former includes redirects and disambiguation pages. Disabled by default, enable with {{mediawiki|Manual:$wgAllowSlowParserFunctions|$wgAllowSlowParserFunctions}}.  
| 1.7+
| 1.7+
|}
|}


===Page names===
===Page names===
{| class="prettytable"
{| class="wikitable"
|-
|-
!| Variable
! {{Hl2}}| Variable
!| Output
! {{Hl2}}| Output
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| <tt><nowiki>{{FULLPAGENAME}}</nowiki></tt>
| <code><nowiki>{{FULLPAGENAME}}</nowiki></code>
| {{FULLPAGENAME}}
| {{FULLPAGENAME}}
| Namespace and page title.
| Namespace and page title.
| 1.6+
| 1.6+
|-
|-
| <tt><nowiki>{{PAGENAME}}</nowiki></tt>
| <code><nowiki>{{PAGENAME}}</nowiki></code>
| {{PAGENAME}}
| {{PAGENAME}}
| Page title.
| Page title.
|
|
|-
|-
| <tt><nowiki>{{BASEPAGENAME}}</nowiki></tt>
| <code><nowiki>{{BASEPAGENAME}}</nowiki></code>
| {{BASEPAGENAME}}
| {{BASEPAGENAME}}
| Page title excluding the current [[Help:Subpages|subpage]] and namespace ("Title/foo" on "Title/foo/bar").
| Page title excluding the current [[Help:Subpages|subpage]] and namespace ("Title/foo" on "Title/foo/bar").
For more complex splitting, use <nowiki>{{</nowiki>[[Help:Extension:ParserFunctions#.23titleparts|#titleparts:]] <nowiki>}}</nowiki> from [[Help:Extension:ParserFunctions|ParserFunctions extension]].
For more complex splitting, use <code><nowiki>{{</nowiki>[[Help:Extension:ParserFunctions#.23titleparts|#titleparts:]]<nowiki>}}</nowiki></code> from [[Help:Extension:ParserFunctions|ParserFunctions extension]].
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{SUBPAGENAME}}</nowiki></tt>
| <code><nowiki>{{SUBPAGENAME}}</nowiki></code>
| {{SUBPAGENAME}}
| {{SUBPAGENAME}}
| The [[Help:Subpages|subpage]] title ("foo" on "Title/foo").
| The [[Help:Subpages|subpage]] title ("foo" on "Title/foo").
| 1.6+
| 1.6+
|-
|-
| <tt><nowiki>{{SUBJECTPAGENAME}}</nowiki></tt>
| <code><nowiki>{{SUBJECTPAGENAME}}</nowiki></code><br/><code><nowiki>{{ARTICLEPAGENAME}}</nowiki></code>
| {{SUBJECTPAGENAME}}
| {{SUBJECTPAGENAME}}<br/>{{ARTICLEPAGENAME}}
| The namespace and title of the associated content page.
| The namespace and title of the associated subject page.
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{TALKPAGENAME}}</nowiki></tt>
| <code><nowiki>{{TALKPAGENAME}}</nowiki></code>
| {{TALKPAGENAME}}
| {{TALKPAGENAME}}
| The namespace and title of the associated talk page.
| The namespace and title of the associated talk page.
Line 425: Line 430:
|}
|}


The <tt><nowiki>{{BASEPAGENAME}}</nowiki></tt> and <tt><nowiki>{{SUBPAGENAME}}</nowiki></tt> magic words only work in namespaces that have subpages enabled.  See {{mediawiki|Manual:$wgNamespacesWithSubpages}} for information on enabling subpages.
The <code><nowiki>{{BASEPAGENAME}}</nowiki></code> and <code><nowiki>{{SUBPAGENAME}}</nowiki></code> magic words only work in namespaces that have subpages enabled.  See {{mediawiki|Manual:$wgNamespacesWithSubpages}} for information on enabling subpages.
 
====URL encoded page names====
 
The following are equivalents encoded for use in MediaWiki URLs (i.e. spaces replaced with underscores and some characters [[wikipedia:Numeric character reference|HTML escaped using numeric character encoding]]):
* <code><nowiki>{{FULLPAGENAMEE}}</nowiki></code>
* <code><nowiki>{{PAGENAMEE}}</nowiki></code>
* <code><nowiki>{{BASEPAGENAMEE}}</nowiki></code>
* <code><nowiki>{{SUBPAGENAMEE}}</nowiki></code>
* <code><nowiki>{{SUBJECTPAGENAMEE}}</nowiki></code>
* <code><nowiki>{{ARTICLEPAGENAMEE}}</nowiki></code>
* <code><nowiki>{{TALKPAGENAMEE}}</nowiki></code>
 
For example, if page name is "L'Aquila", the following code will produce the string "Numeric char encoding":
<pre><nowiki>{{#switch:{{PAGENAME}}
|L'Aquila = No translation
|L = not ok
|L&amp;apos;Aquila = Entity Escaping
|L&amp;#39;Aquila = Numeric char encoding
}}</nowiki></pre>


The following are equivalents encoded for use in MediaWiki URLs (i.e. spaces replaced with underscores and some characters [[w:percent-encoding|percent-encoded]]):
(See [[Bugzilla:35628|this bug]] for more information.)
* <tt><nowiki>{{FULLPAGENAMEE}}</nowiki></tt>
* <tt><nowiki>{{PAGENAMEE}}</nowiki></tt>
* <tt><nowiki>{{BASEPAGENAMEE}}</nowiki></tt>
* <tt><nowiki>{{SUBPAGENAMEE}}</nowiki></tt>
* <tt><nowiki>{{SUBJECTPAGENAMEE}}</nowiki></tt>
* <tt><nowiki>{{TALKPAGENAMEE}}</nowiki></tt>


As of {{mediawiki|rev:46662|1.15+}}, these can all take a parameter, allowing specification of the page to be operated on, instead of just the current page:
As of {{mediawiki|rev:46662|1.15+}}, these can all take a parameter, allowing specification of the page to be operated on, instead of just the current page:
* <tt><nowiki>{{PAGENAME:Template:Main Page}}</nowiki></tt> &rarr; '''{{PAGENAME:Template:Main Page}}'''
* <code><nowiki>{{PAGENAME:Template:Main Page}}</nowiki></code> &rarr; '''{{PAGENAME:Template:Main Page}}'''


{{Warning|Page titles containing certain characters, such as single quotes (') or asterisks <code>*</code>, may produce unexpected results when handled with these magic words, e.g. <code><nowiki>{{PAGESINCATEGORY:{{PAGENAME}}}}</nowiki></code>. See bugs {{mediawiki|bugzilla:14779|14779}}, {{mediawiki|bugzilla:16474|16474}}.}}


{{Warning|Page titles containing certain characters, such as single quotes (') or asterisks <tt>*</tt>, may produce unexpected results when handled with these magic words, e.g. <tt><nowiki>{{PAGESINCATEGORY:{{PAGENAME}}}}</nowiki></tt>. See bugs {{mediawiki|bugzilla:14779|14779}}, {{mediawiki|bugzilla:16474|16474}}.}}
Note that <code><nowiki>{{PAGENAME}}</nowiki></code>, <code><nowiki>{{PAGENAMEE}}</nowiki></code> and <code><nowiki>{{urlencode:}}</nowiki></code> have distinct implementations. See [[Manual:PAGENAMEE encoding]] for details.


===Namespaces===
===Namespaces===
{| class="prettytable"
{| class="wikitable"
|-
|-
!| Variable
! {{Hl2}}| Variable
!| Output
! {{Hl2}}| Output
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| <tt><nowiki>{{NAMESPACE}}</nowiki></tt>
| <code><nowiki>{{NAMESPACE}}</nowiki></code>
| {{NAMESPACE}}
| {{NAMESPACE}}
| Name of the page's namespace
| Name of the page's namespace
|
|
|-
|-
| <tt><nowiki>{{SUBJECTSPACE}}</nowiki></tt><br /><tt><nowiki>{{ARTICLESPACE}}</nowiki></tt>
| <code><nowiki>{{NAMESPACENUMBER}}</nowiki></code>
| {{NAMESPACENUMBER}}
| ID of the page's namespace
| [[gerrit:4056|1.20+]]
|-
| <code><nowiki>{{SUBJECTSPACE}}</nowiki></code><br /><code><nowiki>{{ARTICLESPACE}}</nowiki></code>
| {{SUBJECTSPACE}}<br />{{ARTICLESPACE}}
| {{SUBJECTSPACE}}<br />{{ARTICLESPACE}}
| Name of the associated content namespace
| Name of the associated content namespace
| 1.7+
| 1.7+
|-
|-
| <tt><nowiki>{{TALKSPACE}}</nowiki></tt>
| <code><nowiki>{{TALKSPACE}}</nowiki></code>
| {{TALKSPACE}}
| {{TALKSPACE}}
| Name of the associated talk namespace
| Name of the associated talk namespace
Line 466: Line 490:


The following are equivalents encoded for use in MediaWiki URLs (spaces replaced with underscores and some characters percent-encoded):
The following are equivalents encoded for use in MediaWiki URLs (spaces replaced with underscores and some characters percent-encoded):
* <tt><nowiki>{{NAMESPACEE}}</nowiki></tt>
* <code><nowiki>{{NAMESPACEE}}</nowiki></code>
* <tt><nowiki>{{SUBJECTSPACEE}}</nowiki></tt>
* <code><nowiki>{{SUBJECTSPACEE}}</nowiki></code>
* <tt><nowiki>{{TALKSPACEE}}</nowiki></tt>
* <code><nowiki>{{TALKSPACEE}}</nowiki></code>


As of {{mediawiki|rev:46630|1.15+}}, these can take a page name parameter and will return the namespace of the page name parameter, instead of the current page's:
As of {{mediawiki|rev:46630|1.15+}}, these can take a full-page-name parameter and will return the requested namespace associated with that page, instead of with the current page:
* <tt><nowiki>{{NAMESPACE:Template:Main Page}}</nowiki></tt> &rarr; '''{{NAMESPACE:Template:Main Page}}'''
* <code><nowiki>{{NAMESPACE:Template:Main Page}}</nowiki></code> &rarr; '''{{NAMESPACE:Template:Main Page}}'''
* <tt><nowiki>{{SUBJECTSPACE:Template:Main Page}}</nowiki></tt> &rarr; '''{{SUBJECTSPACE:Template:Main Page}}'''
* <code><nowiki>{{SUBJECTSPACE:Template:Main Page}}</nowiki></code> &rarr; '''{{SUBJECTSPACE:Template:Main Page}}'''
* <tt><nowiki>{{TALKSPACE:Template:Main Page}}</nowiki></tt> &rarr; '''{{TALKSPACE:Template:Main Page}}'''
* <code><nowiki>{{TALKSPACE:Template:Main Page}}</nowiki></code> &rarr; '''{{TALKSPACE:Template:Main Page}}'''
Parameter must not be a namespace name:
* <code><nowiki>{{SUBJECTSPACE:Help talk}}</nowiki></code> &rarr; '''{{SUBJECTSPACE:Help talk}}'''


==Parser functions==
==Parser functions==
Line 482: Line 508:


===URL data===
===URL data===
{| class="prettytable"
{| class="wikitable"
|-
|-
!| Parser function
! {{Hl2}}| Parser function
!| Input → Output
! {{Hl2}}| Input → Output
!| Description
! {{Hl2}}| Description
!| Versions
! {{Hl2}}| Versions
|-
|-
| <tt><nowiki>{{localurl:</nowiki>''page name''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{localurl:</nowiki>''page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{localurl:</nowiki>''page name''<nowiki>}}</nowiki></code><br /><code><nowiki>{{localurl:</nowiki>''page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></code>
| <nowiki>{{localurl:MediaWiki}}</nowiki> → {{localurl:MediaWiki}}<br /><nowiki>{{localurl:MediaWiki|printable=yes}}</nowiki>  → {{localurl:MediaWiki|printable=yes}}
| <code><nowiki>{{localurl:MediaWiki}}</nowiki></code> → {{localurl:MediaWiki}}<br /><code><nowiki>{{localurl:MediaWiki|printable=yes}}</nowiki></code>  → {{localurl:MediaWiki|printable=yes}}
| The relative path to the title.
| The relative path to the title.  
|
|
|-
|-
| <tt><nowiki>{{fullurl:</nowiki>''page name''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{fullurl:</nowiki>''page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{fullurl:</nowiki>''interwiki:remote page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{fullurl:</nowiki>''page name''<nowiki>}}</nowiki></code><br /><code><nowiki>{{fullurl:</nowiki>''page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></code><br /><code><nowiki>{{fullurl:</nowiki>''interwiki:remote page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></code>
| <nowiki>{{fullurl:Category:Top level}}</nowiki> → {{fullurl:Category:Top level}}<br />
| <code><nowiki>{{fullurl:Category:Top level}}</nowiki></code> → {{fullurl:Category:Top level}}<br />
<nowiki>{{fullurl:Category:Top level|action=edit}}</nowiki> → {{fullurl:Category:Top level|action=edit}}
<code><nowiki>{{fullurl:Category:Top level|action=edit}}</nowiki></code> → {{fullurl:Category:Top level|action=edit}}
| The absolute path to the title. This will also resolve [[Manual:Interwiki|Interwiki]] prefixes.
| A protocol-relative path to the title. This will also resolve [[Manual:Interwiki|Interwiki]] prefixes. '''Note''': Unbracketed (plain) protocol-relative links are not automagically linked.
| 1.5+
| 1.5+
|-
|-
| <tt><nowiki>{{filepath:</nowiki>''file name''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{filepath:</nowiki>''file name''<nowiki>|nowiki}}</nowiki></tt>
| <code><nowiki>{{canonicalurl:</nowiki>''page name''<nowiki>}}</nowiki></code><br /><code><nowiki>{{canonicalurl:</nowiki>''page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></code><br /><code><nowiki>{{canonicalurl:</nowiki>''interwiki:remote page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></code>
| <nowiki>{{filepath:Wiki.png}}</nowiki> → {{filepath:Wiki.png}}<br /><nowiki>{{filepath:Wiki.png|nowiki}}</nowiki> → {{filepath:Wiki.png|nowiki}}
| <code><nowiki>{{canonicalurl:Category:Top level}}</nowiki></code> → {{canonicalurl:Category:Top level}}<br />
| The absolute URL to a media file.
<code><nowiki>{{canonicalurl:Category:Top level|action=edit}}</nowiki></code> → {{canonicalurl:Category:Top level|action=edit}}
| {{mediawiki|rev:25854|1.12+}}
| The absolute path to the title, using the canonical url. This will also resolve [[Manual:Interwiki|Interwiki]] prefixes.
| 1.18+
|-
| <code><nowiki>{{filepath:</nowiki>''file name''<nowiki>}}</nowiki></code><br /><code><nowiki>{{filepath:</nowiki>''file name''<nowiki>|nowiki}}</nowiki></code><br /><code><nowiki>{{filepath:</nowiki>''file name''<nowiki>|</nowiki>''thumbnail_size''<nowiki>}}</nowiki></code>
| <code><nowiki>{{filepath:Wiki.png}}</nowiki></code> → {{filepath:Wiki.png}}<br />
<code><nowiki>{{filepath:Wiki.png|nowiki}}</nowiki></code> → {{filepath:Wiki.png|nowiki}}<br />
<code><nowiki>{{filepath:Example.svg|300}}</nowiki></code> → {{filepath:Example.svg|300}}<br />
| The absolute URL to the full size or thumbnail ({{mediawiki|rev:80813|1.18+}}) of a media file.
| {{mediawiki|rev:25854|1.12+}}<br />{{mediawiki|rev:80813|1.18+}}
|-
|-
| <tt><nowiki>{{urlencode:</nowiki>''string''<nowiki>}}</nowiki></tt> (or <tt><nowiki>{{urlencode:</nowiki>''string''<nowiki>|QUERY}}</nowiki></tt>)<br /><tt><nowiki>{{urlencode:</nowiki>''string''<nowiki>|WIKI}}</nowiki></tt><br /><tt><nowiki>{{urlencode:</nowiki>''string''<nowiki>|PATH}}</nowiki></tt>
| <code><nowiki>{{urlencode:</nowiki>''string''<nowiki>}}</nowiki></code> (or <code><nowiki>{{urlencode:</nowiki>''string''<nowiki>|QUERY}}</nowiki></code>)<br /><code><nowiki>{{urlencode:</nowiki>''string''<nowiki>|WIKI}}</nowiki></code><br /><code><nowiki>{{urlencode:</nowiki>''string''<nowiki>|PATH}}</nowiki></code>
| <nowiki>{{urlencode:x y z á é}} (or {{urlencode:x y z á é|QUERY}})</nowiki> → {{urlencode:x y z á é}}<br /><nowiki>{{urlencode:x y z á é|WIKI}}</nowiki> → x_y_z_%C3%A1_%C3%A9<br /><nowiki>{{urlencode:x y z á é|PATH}}</nowiki> → x%20y%20z%20%C3%A1%20%C3%A9
| <code><nowiki>{{urlencode:x y z á é}}</nowiki></code> (or <code><nowiki>{{urlencode:x y z á é|QUERY}})</nowiki></code> → {{urlencode:x y z á é}}<br /><code><nowiki>{{urlencode:x y z á é|WIKI}}</nowiki></code> → x_y_z_%C3%A1_%C3%A9<br /><code><nowiki>{{urlencode:x y z á é|PATH}}</nowiki></code> → x%20y%20z%20%C3%A1%20%C3%A9
| The input encoded for use in URLs.
Note that the default changed from <code>|WIKI</code> to <code>|QUERY</code> in 1.17; this may break templates that rely on this function.
| The input encoded for use in URLs. Note that there is no urldecode function like there is in the obsolete [[Extension:StringFunctions]].
| {{mediawiki|rev:14273|1.7+}} (or {{mediawiki|rev:64726|1.17+}})<br />{{mediawiki|rev:64726|1.17+}}<br />{{mediawiki|rev:64726|1.17+}}
| {{mediawiki|rev:14273|1.7+}} (or {{mediawiki|rev:64726|1.17+}})<br />{{mediawiki|rev:64726|1.17+}}<br />{{mediawiki|rev:64726|1.17+}}
|-
|-
| <tt><nowiki>{{anchorencode:</nowiki>''string''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{anchorencode:</nowiki>''string''<nowiki>}}</nowiki></code>
| <nowiki>{{anchorencode:x y z á é}}</nowiki> → {{anchorencode:x y z á é}}
| <code><nowiki>{{anchorencode:x y z á é}}</nowiki></code> → {{anchorencode:x y z á é}}
| The input encoded for use in URL section anchors (after the '#' symbol in a URL).
| The input encoded for use in URL section anchors (after the '#' symbol in a URL).
| {{mediawiki|rev:16279|1.8+}}
| {{mediawiki|rev:16279|1.8+}}
Line 517: Line 552:


===Namespaces===
===Namespaces===
<tt><nowiki>{{ns:}}</nowiki></tt> returns the localized name for the [[Help:Namespace|namespace]] with that index. <tt><nowiki>{{nse:}}</nowiki></tt> is the equivalent encoded for MediaWiki URLs. It does the same, but it replaces spaces with underscores, making it usable in external links.
<code><nowiki>{{ns:}}</nowiki></code> returns the current localized name for the [[Help:Namespace|namespace]] with that index, canonical name, or local alias. Thus <code><nowiki>{{ns:6}}</nowiki></code>, <code><nowiki>{{ns:File}}</nowiki></code>, and <code><nowiki>{{ns:Image}}</nowiki></code> (an old name for the File namespace) all return "{{ns:6}}". On a wiki where the content language was French, <code><nowiki>{{ns:Fichier}}</nowiki></code> would also be valid, but <code><nowiki>{{ns:Datei}}</nowiki></code> (the localisation of "File" into German) would not.
{| class="prettytable"
 
<code><nowiki>{{nse:}}</nowiki></code> is the equivalent encoded for MediaWiki URLs. It does the same, but it replaces spaces with underscores, making it usable in external links.
{| class="wikitable"
|-
|-
! colspan="2" width="50%" | Content namespaces
! {{hl3}} colspan="2" width="50%" | Content namespaces
! rowspan="12" |
! rowspan="12" |
! colspan="2" width=%50%" | Talk namespaces
! {{hl3}} colspan="2" width=%50%" | Talk namespaces
|-
|-
!| Usage
! {{Hl2}}| Usage
!| Output
! {{Hl2}}| Output
!| Usage
! {{Hl2}}| Usage
!| Output
! {{Hl2}}| Output
|-
|-
| <tt><nowiki>{{ns:-2}}</nowiki></tt> or <tt><nowiki>{{ns:Media}}</nowiki></tt>
| <code><nowiki>{{ns:-2}}</nowiki></code> or <code><nowiki>{{ns:Media}}</nowiki></code>
| {{ns:-2}} || ||
| {{ns:-2}} || ||
|-
|-
| <tt><nowiki>{{ns:-1}}</nowiki></tt> or <tt><nowiki>{{ns:Special}}</nowiki></tt>
| <code><nowiki>{{ns:-1}}</nowiki></code> or <code><nowiki>{{ns:Special}}</nowiki></code>
| {{ns:-1}} || ||
| {{ns:-1}} || ||
|-
|-
| <tt><nowiki>{{ns:0}}</nowiki></tt> or <tt><nowiki>{{ns:}}</nowiki></tt>
| <code><nowiki>{{ns:0}}</nowiki></code> or <code><nowiki>{{ns:}}</nowiki></code>
| {{ns:}}
| {{ns:}}
| <tt><nowiki>{{ns:1}}</nowiki></tt> or <tt><nowiki>{{ns:Talk}}</nowiki></tt>
| <code><nowiki>{{ns:1}}</nowiki></code> or <code><nowiki>{{ns:Talk}}</nowiki></code>
| {{ns:1}}
| {{ns:1}}
|-
|-
| <tt><nowiki>{{ns:2}}</nowiki></tt> or <tt><nowiki>{{ns:User}}</nowiki></tt>
| <code><nowiki>{{ns:2}}</nowiki></code> or <code><nowiki>{{ns:User}}</nowiki></code>
| {{ns:2}}
| {{ns:2}}
| <tt><nowiki>{{ns:3}}</nowiki></tt> or <tt><nowiki>{{ns:User talk}}</nowiki></tt>
| <code><nowiki>{{ns:3}}</nowiki></code> or <code><nowiki>{{ns:User talk}}</nowiki></code>
| {{ns:3}}
| {{ns:3}}
|-
|-
| <tt><nowiki>{{ns:4}}</nowiki></tt> or <tt><nowiki>{{ns:Project}}</nowiki></tt>
| <code><nowiki>{{ns:4}}</nowiki></code> or <code><nowiki>{{ns:Project}}</nowiki></code>
| {{ns:4}}
| {{ns:4}}
| <tt><nowiki>{{ns:5}}</nowiki></tt> or <tt><nowiki>{{ns:Project talk}}</nowiki></tt>
| <code><nowiki>{{ns:5}}</nowiki></code> or <code><nowiki>{{ns:Project talk}}</nowiki></code>
| {{ns:5}}
| {{ns:5}}
|-
|-
| <tt><nowiki>{{ns:6}}</nowiki></tt> or <tt><nowiki>{{ns:File}}</nowiki></tt> or <tt><nowiki>{{ns:Image}}</nowiki></tt>
| <code><nowiki>{{ns:6}}</nowiki></code> or <code><nowiki>{{ns:File}}</nowiki></code> or <code><nowiki>{{ns:Image}}</nowiki></code>
| {{ns:6}}
| {{ns:6}}
| <tt><nowiki>{{ns:7}}</nowiki></tt> or <tt><nowiki>{{ns:File talk}}</nowiki></tt> or <tt><nowiki>{{ns:Image talk}}</nowiki></tt>
| <code><nowiki>{{ns:7}}</nowiki></code> or <code><nowiki>{{ns:File talk}}</nowiki></code> or <code><nowiki>{{ns:Image talk}}</nowiki></code>
| {{ns:7}}
| {{ns:7}}
|-
|-
| <tt><nowiki>{{ns:8}}</nowiki></tt> or <tt><nowiki>{{ns:MediaWiki}}</nowiki></tt>
| <code><nowiki>{{ns:8}}</nowiki></code> or <code><nowiki>{{ns:MediaWiki}}</nowiki></code>
| {{ns:8}}
| {{ns:8}}
| <tt><nowiki>{{ns:9}}</nowiki></tt> or <tt><nowiki>{{ns:MediaWiki talk}}</nowiki></tt>
| <code><nowiki>{{ns:9}}</nowiki></code> or <code><nowiki>{{ns:MediaWiki talk}}</nowiki></code>
| {{ns:9}}
| {{ns:9}}
|-
|-
| <tt><nowiki>{{ns:10}}</nowiki></tt> or <tt><nowiki>{{ns:Template}}</nowiki></tt>
| <code><nowiki>{{ns:10}}</nowiki></code> or <code><nowiki>{{ns:Template}}</nowiki></code>
| {{ns:10}}
| {{ns:10}}
| <tt><nowiki>{{ns:11}}</nowiki></tt> or <tt><nowiki>{{ns:Template talk}}</nowiki></tt>
| <code><nowiki>{{ns:11}}</nowiki></code> or <code><nowiki>{{ns:Template talk}}</nowiki></code>
| {{ns:11}}
| {{ns:11}}
|-
|-
| <tt><nowiki>{{ns:12}}</nowiki></tt> or <tt><nowiki>{{ns:Help}}</nowiki></tt>
| <code><nowiki>{{ns:12}}</nowiki></code> or <code><nowiki>{{ns:Help}}</nowiki></code>
| {{ns:12}}
| {{ns:12}}
| <tt><nowiki>{{ns:13}}</nowiki></tt> or <tt><nowiki>{{ns:Help talk}}</nowiki></tt>
| <code><nowiki>{{ns:13}}</nowiki></code> or <code><nowiki>{{ns:Help talk}}</nowiki></code>
| {{ns:13}}
| {{ns:13}}
|-
|-
| <tt><nowiki>{{ns:14}}</nowiki></tt> or <tt><nowiki>{{ns:Category}}</nowiki></tt>
| <code><nowiki>{{ns:14}}</nowiki></code> or <code><nowiki>{{ns:Category}}</nowiki></code>
| {{ns:14}}
| {{ns:14}}
| <tt><nowiki>{{ns:15}}</nowiki></tt> or <tt><nowiki>{{ns:Category talk}}</nowiki></tt>
| <code><nowiki>{{ns:15}}</nowiki></code> or <code><nowiki>{{ns:Category talk}}</nowiki></code>
| {{ns:15}}
| {{ns:15}}
|}
|}


===Formatting===
===Formatting===
<!--Well gosh, with the source of the examples hidden, who can tell what you are inputting without looking here in the source?-->
 
{| class="prettytable"
<!-- Well gosh, with the source of the examples hidden, who can tell what you are inputting without looking here in the source? -->
!| Usage
{| class="wikitable"
!| Input → Output
! {{Hl2}}| Usage
!| Description
! {{Hl2}}| Input → Output
!| Version
! {{Hl2}}| Description
! {{Hl2}}| Version
|-
|-
|-
|-
| <tt><nowiki>{{lc:</nowiki>''string''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{formatnum:</nowiki>''unformatted&nbsp;num''<nowiki>}}</nowiki></code><br /><code><nowiki>{{formatnum:</nowiki>''formatted&nbsp;num''<nowiki>|R}}</nowiki></code>
| <tt><nowiki>{{lc:DATA CENTER}}</nowiki></tt> → {{lc:DATA CENTER}}
| <code><nowiki>{{formatnum:987654321.654321}}</nowiki></code><br/> {{formatnum:987654321.654321}}<br />  
| The lowercase input.
<code><nowiki>{{formatnum:987,654,321.654321|R}}</nowiki></code><br/> → {{formatnum:987,654,321.654321|R}}<br />  
| 1.5+
<code><nowiki>{{formatnum:{{formatnum:987.654.321}}}}</nowiki></code><br/> → 987 654 321 (e.g. with Italian locale)<br />
|-
<code><nowiki>{{formatnum:00001}}</nowiki></code><br/> → {{formatnum:00001}}
| <tt><nowiki>{{lcfirst:</nowiki>''string''<nowiki>}}</nowiki></tt>
| The input with decimal and decimal group separators, and localized digit script, according to the wiki's default locale. The <code><nowiki>|</nowiki>R</code> parameter can be used to unformat a number, for use in mathematical situations. It doesn't always work if you try to unformat a number in non-English format on a wiki with non-English locale; if you need to format (according the wiki's locale) a number in unknown input format, try and use <code>formatnum</code> two times (but not if it can have a decimal group, or its separator will be eaten or the number won't be formatted).<br/><small>{{warning}}Leading zeroes are not removed, you can use <nowiki>{{#expr:00001}}</nowiki> instead if you have [[Extension:ParserFunctions]] installed</small>
| <tt><nowiki>{{lcfirst:DATA center}}</nowiki></tt> → {{lcfirst:DATA center}}
| The input with the <u>very first</u> character lowercase.
| 1.5+
|-
| <tt><nowiki>{{uc:</nowiki>''string''<nowiki>}}</nowiki></tt>
| <tt><nowiki>{{uc:text transform}}</nowiki></tt> → {{uc:text transform}}
| The uppercase input.
| 1.5+
|-
| <tt><nowiki>{{ucfirst:</nowiki>''string''<nowiki>}}</nowiki></tt>
| <tt><nowiki>{{ucfirst:text TRANSFORM}}</nowiki></tt> → {{ucfirst:text TRANSFORM}}
| The input with the <u>very first</u> character uppercase.
| 1.5+
|-
| <tt><nowiki>{{formatnum:</nowiki>''unformatted&nbsp;num''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{formatnum:</nowiki>''formatted&nbsp;num''<nowiki>|R}}</nowiki></tt>
| <tt><nowiki>{{formatnum:987654321.654321}}</nowiki></tt><br/> → {{formatnum:987654321.654321}}<br /> <tt><nowiki>{{formatnum:987,654,321.654321|R}}</nowiki></tt><br/> → {{formatnum:987,654,321.654321|R}}
| The input with decimal and decimal group separators, and localized digit script, according to the wiki's default locale. The <tt><nowiki>|</nowiki>R</tt> parameter can be used to unformat a number, for use in mathematical situations.
| 1.7+<br />{{mediawiki|rev:32012|1.13+}}
| 1.7+<br />{{mediawiki|rev:32012|1.13+}}
|-
|-
Line 615: Line 636:
{{#dateformat:</nowiki>''date''{{!}}''format''<nowiki>}}
{{#dateformat:</nowiki>''date''{{!}}''format''<nowiki>}}
{{#formatdate:</nowiki>''date''{{!}}''format''<nowiki>}}</nowiki></code>
{{#formatdate:</nowiki>''date''{{!}}''format''<nowiki>}}</nowiki></code>
|
|  
<tt><nowiki>{{#dateformat:25 deC 2009|ymd}}</nowiki></tt><br/>
<code><nowiki>{{#dateformat:25 deC 2009|ymd}}</nowiki></code><br/>
→ {{#dateformat:25 deC 2009|ymd}} (your pref),  2009 DeC 25 (default)<br/>
→ {{#dateformat:25 deC 2009|ymd}} (your pref),  2009 DeC 25 (default)<br/>
<tt><nowiki>{{#formatdate:dec 25,2009|dmy}}</nowiki></tt><br/>
<code><nowiki>{{#formatdate:dec 25,2009|dmy}}</nowiki></code><br/>
→ {{#formatdate:dec 25,2009|dmy}} (your pref), 25 Dec 2009 (default)<br/>
→ {{#formatdate:dec 25,2009|dmy}} (your pref), 25 Dec 2009 (default)<br/>
<tt><nowiki>{{#dateformat:2009-12-25|mdy}}</nowiki></tt><br/>
<code><nowiki>{{#dateformat:2009-12-25|mdy}}</nowiki></code><br/>
→ {{#dateformat:2009-12-25|mdy}} (your pref), December 25, 2009 (default)<br/>
→ {{#dateformat:2009-12-25|mdy}} (your pref), December 25, 2009 (default)<br/>
<tt><nowiki>{{#formatdate:2009 dec 25|ISO 8601}}</nowiki></tt><br/>
<code><nowiki>{{#formatdate:2009 dec 25|ISO 8601}}</nowiki></code><br/>
→ {{#formatdate:2009 dec 25|ISO 8601}} (your pref), 2009-12-25 (default)<br/>
→ {{#formatdate:2009 dec 25|ISO 8601}} (your pref), 2009-12-25 (default)<br/>
<tt><nowiki>{{#dateformat:25 decEmber|mdy}}</nowiki></tt><br/>
<code><nowiki>{{#dateformat:25 decEmber|mdy}}</nowiki></code><br/>
→ {{#dateformat:25 decEmber|mdy}} (your pref), DecEmber 25 (default)<br/>
→ {{#dateformat:25 decEmber|mdy}} (your pref), DecEmber 25 (default)<br/>




Note: In the example above, "your pref" refers to your date preference on the current MediaWiki wiki only.
Note: In the example above, "your pref" refers to your date preference on the current MediaWiki wiki only.
| Formats an unlinked date based on user "Date format" preference, and adds metadata tagging it as a formatted date. For logged-out users and those who have not set a date format in their preferences, dates can be given a default: <tt>mdy</tt>, <tt>dmy</tt>, <tt>ymd</tt>, <tt>ISO&nbsp;8601</tt> (all case sensitive). If only the month and day are given, only <tt>mdy</tt> and <tt>dmy</tt> are valid. If a format is not specified or is invalid, the input format is used as a default. If the supplied date is not recognized as a valid date (specifically, if it contains any metadata such as from a nested use of these or a similar template), it is rendered unchanged, and no (additional) metadata is generated.<br/><small>{{warning}}Although the ISO 8601 standard requires that dates be in the Gregorian calendar, the ISO parameter in this function will still format dates that fall outside the usual Gregorian range (e.g. dates prior to 1583). Also, the magic word cannot properly convert between negative years (used with ISO 8601) and years BC or years BCE (used in general writing).</small>
| Formats an unlinked date based on user "Date format" preference, and adds metadata tagging it as a formatted date. For logged-out users and those who have not set a date format in their preferences, dates can be given a default: <code>mdy</code>, <code>dmy</code>, <code>ymd</code>, <code>ISO&nbsp;8601</code> (all case sensitive). If only the month and day are given, only <code>mdy</code> and <code>dmy</code> are valid. If a format is not specified or is invalid, the input format is used as a default. If the supplied date is not recognized as a valid date (specifically, if it contains any metadata such as from a nested use of these or similar templates), it is rendered unchanged, and no (additional) metadata is generated.<br/><small>{{warning}}Although the ISO 8601 standard requires that dates be in the Gregorian calendar, the ISO parameter in this function will still format dates that fall outside the usual Gregorian range (e.g. dates prior to 1583). Also, the magic word cannot properly convert between negative years (used with ISO 8601) and years BC or years BCE (used in general writing).</small>
| {{mediawiki|rev:48249|1.15+}}
| {{mediawiki|rev:48249|1.15+}}
|-
|-
| <tt><nowiki>{{padleft:xyz|</nowiki>''stringlength''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{padleft:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''char''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{padleft:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''string''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{lc:</nowiki>''string''<nowiki>}}</nowiki></code>
| <tt><nowiki>{{padleft:xyz|5}}</nowiki></tt> → {{padleft:xyz|5}}<br /> <tt><nowiki>{{padleft:xyz|5|_}}</nowiki></tt> → {{padleft:xyz|5|_}} <tt><nowiki>{{padleft:xyz|5|abc}}</nowiki></tt> → {{padleft:xyz|5|abc}}
| <code><nowiki>{{lc:DATA CENTER}}</nowiki></code> → {{lc:DATA CENTER}}
| Inserts a string of padding characters (character chosen in third parameter; default '0') of a specified length (second parameter) next to a chosen base character or variable (first parameter). The final digits or characters in the base replace the final characters in the padding; i.e. <nowiki>{{padleft:44|3|0}}</nowiki> produces {{padleft:44|3}}. The padding string may be truncated if its length does not evenly divide the required number of characters.<br />'''{{mediawiki|bugzilla:16852|bug}} (fixed in {{mediawiki|rev:45734|r45734}}):''' multibyte characters are interpreted as two characters, which can skew width. These also cannot be used as padding characters.
| The lowercase input.
| 1.5+
|-
| <code><nowiki>{{lcfirst:</nowiki>''string''<nowiki>}}</nowiki></code>
| <code><nowiki>{{lcfirst:DATA center}}</nowiki></code> → {{lcfirst:DATA center}}
| The input with the <u>very first</u> character lowercase.
| 1.5+
|-
| <code><nowiki>{{uc:</nowiki>''string''<nowiki>}}</nowiki></code>
| <code><nowiki>{{uc:text transform}}</nowiki></code> → {{uc:text transform}}
| The uppercase input.
| 1.5+
|-
| <code><nowiki>{{ucfirst:</nowiki>''string''<nowiki>}}</nowiki></code>
| <code><nowiki>{{ucfirst:text TRANSFORM}}</nowiki></code> → {{ucfirst:text TRANSFORM}}
| The input with the <u>very first</u> character uppercase.
| 1.5+
|-
| <code><nowiki>{{padleft:xyz|</nowiki>''stringlength''<nowiki>}}</nowiki></code><br /><code><nowiki>{{padleft:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''char''<nowiki>}}</nowiki></code><br /><code><nowiki>{{padleft:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''string''<nowiki>}}</nowiki></code>
| <code><nowiki>{{padleft:xyz|5}}</nowiki></code> → {{padleft:xyz|5}}<br /> <code><nowiki>{{padleft:xyz|5|_}}</nowiki></code> → {{padleft:xyz|5|_}} <code><nowiki>{{padleft:xyz|5|abc}}</nowiki></code> → {{padleft:xyz|5|abc}} <code><nowiki>{{padleft:xyz|2}}</nowiki></code> → {{padleft:xyz|2}}<br /> <code><nowiki>{{padleft:|1|xyz}}</nowiki></code> → {{padleft:|1|xyz}} (first character of the string)<br />
| Inserts a string of padding characters (character chosen in third parameter; default '0') of a specified length (second parameter) next to a chosen base character or variable (first parameter). The final digits or characters in the base replace the final characters in the padding; i.e. <code><nowiki>{{padleft:44|3|0}}</nowiki></code> produces {{padleft:44|3}}. The padding string may be truncated if its length does not evenly divide the required number of characters.<br />'''{{mediawiki|bugzilla:16852|bug}} (fixed in {{mediawiki|rev:45734|r45734}}):''' multibyte characters are interpreted as two characters, which can skew width. These also cannot be used as padding characters.
| 1.8+
| 1.8+
|-
|-
| <tt><nowiki>{{padright:xyz|</nowiki>''stringlength''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{padright:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''char''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{padright:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''string''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{padright:xyz|</nowiki>''stringlength''<nowiki>}}</nowiki></code><br /><code><nowiki>{{padright:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''char''<nowiki>}}</nowiki></code><br /><code><nowiki>{{padright:xyz|</nowiki>''strlen''<nowiki>|</nowiki>''string''<nowiki>}}</nowiki></code>
| <tt><nowiki>{{padright:xyz|5}}</nowiki></tt> → {{padright:xyz|5}}<br /> <tt><nowiki>{{padright:xyz|5|_}}</nowiki></tt> → {{padright:xyz|5|_}} <tt><nowiki>{{padright:xyz|5|abc}}</nowiki></tt> → {{padright:xyz|5|abc}}
| <code><nowiki>{{padright:xyz|5}}</nowiki></code> → {{padright:xyz|5}}<br />
<code><nowiki>{{padright:xyz|5|_}}</nowiki></code> → {{padright:xyz|5|_}}
<code><nowiki>{{padright:xyz|5|abc}}</nowiki></code> → {{padright:xyz|5|abc}}
<code><nowiki>{{padright:xyz|2}}</nowiki></code> → {{padright:xyz|2}}<br />
<code><nowiki>{{padright:|1|xyz}}</nowiki></code> → {{padright:|1|xyz}}<br />
| Identical to padleft, but adds padding characters to the right side.
| Identical to padleft, but adds padding characters to the right side.
|
|
|}
'''See also:''' [[Extension:StringFunctions]]
===Localisation===
Here are the magic words which are used as main localisation tools. Other magic words will often depend on the wiki's locale and configuration or on the chosen language: see in particular [[#Date and time]], [[#Formatting]], [[#Miscellaneous]].
The usage of these magic words can be very complex, and the documentation is currently incomplete; there's some more info on [[translatewiki:FAQ#PLURAL|Plural]], [[translatewiki:Grammar|Grammar]], [[translatewiki:Gender|Gender]].
{| class="wikitable"
! {{Hl2}}| Usage
! {{Hl2}}| Input → Output
! {{Hl2}}| Description
! {{Hl2}}| Version
|-
|-
|-
|-
| <tt><nowiki>{{plural:2|</nowiki>''is''<nowiki>|</nowiki>''are''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{plural:2|</nowiki>''is''<nowiki>|</nowiki>''are''<nowiki>}}</nowiki></code>
| <tt><nowiki>{{plural:1|is|are}}</nowiki></tt> → {{plural:1|is|are}}<br /> <tt><nowiki>{{plural:2|is|are}}</nowiki></tt> → {{plural:2|is|are}}
| <code><nowiki>{{plural:0|is|are}}</nowiki></code> → {{plural:0|is|are}}<br />  <code><nowiki>{{plural:1*1|is|are}}</nowiki></code> → {{plural:1*1|is|are}}<br /> <code><nowiki>{{plural:21 mod 10|is|are}}</nowiki></code> → {{plural:21 mod 10|is|are}}<br /> <code><nowiki>{{plural:{{#expr:21 mod 10}}|is|are}}</nowiki></code> → {{plural:{{#expr:21 mod 10}}|is|are}}<br />  <code><nowiki>{{plural:1|is|are}}</nowiki></code> → {{plural:1|is|are}}<br /> <code><nowiki>{{plural:2|is|are}}</nowiki></code> → {{plural:2|is|are}}<br /> (for [[:w:Polish language|Polish]]):<br /><code><nowiki>{{plural:2|milion|miliony|milionów}}</nowiki></code> → miliony
| Outputs the correct given pluralization form (parameters except first) depending on the count (first parameter). Plural transformations are used for languages like Russian based on "count mod 10".
| Outputs the singular form (second parameter) if the first parameter is an expression equalling one; the plural form (third parameter) otherwise. Its functioning is [[m:Help:Magic_words#Language-dependent_word_conversions|language-dependent]]. Plural transformations are used for languages like Russian based on "count mod 10". You should not expect this to handle fractions (like 44.5) — see [[bugzilla:28128|bug 28128]].
|
|
|-
|-
| <tt><nowiki>{{grammar:N|</nowiki>''noun''<nowiki>}}</nowiki></tt>
| <code><nowiki>{{grammar:N|</nowiki>''noun''<nowiki>}}</nowiki></code>
|
|  
| Outputs the correct inflected form of the given word described by the inflection code after the colon (language-dependent).  Grammar transformations are used for inflected languages like Polish.  See also {{mediawiki|Manual:$wgGrammarForms}}.
| Outputs the correct inflected form of the given word described by the inflection code after the colon ([[m:Help:Magic_words#Language-dependent_word_conversions|language-dependent]]).  Grammar transformations are used for inflected languages like Polish.  See also {{mediawiki|Manual:$wgGrammarForms}}.
| 1.7+
| 1.7+
|-
| <code><nowiki>{{gender:</nowiki>''username''<br /><nowiki>|</nowiki>''return text if user is male''<br /><nowiki>|</nowiki>''return text if user is female''<br /><nowiki>|</nowiki>''return text if user hasn't defined their gender''<nowiki>}}</nowiki></code>
| ''(depends on the named user's gender)''
| A switch for the gender set in [[Special:Preferences]].<br/>
Note:  If 3rd parameter is omitted and user hasn't defined his/her gender, then <code>''text if user is male''</code> is returned.
| {{mediawiki|rev:46247|1.15+}}
|-
| <code><nowiki>{{int:</nowiki>''message name''<nowiki>}}</nowiki>
| <code><nowiki>{{int:</nowiki>edit<nowiki>}}</nowiki></code> &rarr; '''{{int:edit}}''' <br /><small>''(depends on user language, try: [{{fullurl:{{FULLPAGENAME}}|uselang=fr}}#Miscellaneous fr] &bull;[{{fullurl:{{FULLPAGENAME}}|uselang=ja}}#Miscellaneous ja])''</small>
| Internationalizes (translates) the given '''int'''erface (MediaWiki namespace) message into the user language. ''Note that this can damage/confuse cache consistency in MediaWiki 1.17 and earlier, see [[bugzilla:14404|bug 14404]].''
|
|-
| <code><nowiki>{{int:editsectionhint|MediaWiki}}</nowiki>
| <code><nowiki>{{int:editsectionhint|MediaWiki}}</nowiki></code> &rarr; '''{{int:editsectionhint|MediaWiki}}'''
| You may also use parameters with translations.<br />Parameters are designated in messages with: $1, $2, $3, etc.<br />For example, here is the message for ''editsectionhint'': Edit section: $1<br />In this example, MediaWiki replaces $1.
|
|}
|}


===Miscellaneous===
===Miscellaneous===
{| class="prettytable plainlinks"
 
!| Usage
{| class="wikitable plainlinks"
!| Output
! {{Hl2}}| Usage
!| Description
! {{Hl2}}| Output
!| Version
! {{Hl2}}| Description
! {{Hl2}}| Version
|-
|-
| <tt><nowiki>{{int:</nowiki>''message name''<nowiki>}}</nowiki>
| <code><nowiki>{{#language:</nowiki>''language code''<nowiki>}}</nowiki></code><br />
| <tt><nowiki>{{int:</nowiki>edit<nowiki>}}</nowiki></tt> &rarr; '''{{int:edit}}''' <br /><small>''(depends on user language, try: [{{fullurl:{{FULLPAGENAME}}|uselang=fr}}#Miscellaneous fr] &bull;[{{fullurl:{{FULLPAGENAME}}|uselang=ja}}#Miscellaneous ja])''</small>
<code><nowiki>{{#language:ar}}</nowiki></code><br />
| Internationalizes (translates) the given '''int'''erface (MediaWiki namespace) message into the user language. ''Note that this can damage/confuse cache consistency, see [[bugzilla:14404|bug 14404]].''
<code><nowiki>{{#language:</nowiki>''language code''<nowiki>|</nowiki>''target language code''<nowiki>}}</nowiki></code><br />
|
<code><nowiki>{{#language:ar|en}}</nowiki></code>
|-
| {{#language:language code}}<br />{{#language:ar}}<br />{{#language:language code|target language code}}<br />Arabic
| <tt><nowiki>{{#language:</nowiki>''language code''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{#language:ar}}</nowiki></tt><br /><tt><nowiki>{{#language:th}}</nowiki></tt>
| The full name of the language for the given language code: native name by default, name translated in target language if a target language code is specified. Codes are mostly in accordance with [[w:ISO 639|ISO 639]].
| {{#language:language code}}<br />{{#language:ar}}<br />{{#language:th}}
| The native name for the given language code, in accordance with [[w:ISO 639|ISO 639]].
| {{mediawiki|rev:14490|1.7+}}
| {{mediawiki|rev:14490|1.7+}}
{{r|91875|1.18+}} (translation)
|-
|-
| <tt><nowiki>{{#special:</nowiki>''special page name''<nowiki>}}</nowiki><br /><nowiki>{{#special:userlogin}}</nowiki></tt>
| <code><nowiki>{{#special:</nowiki>''special page name''<nowiki>}}</nowiki><br /><nowiki>{{#special:userlogin}}</nowiki></code>
| {{#special:special page name}}<br />{{#special:userlogin}}
| {{#special:special page name}}<br />{{#special:userlogin}}
| The localized name for the given canonical Special: page.
| The localized name for the given canonical Special: page.
| {{mediawiki|rev:17321|1.9+}}
| {{mediawiki|rev:17321|1.9+}}
|-
|-
| <tt><nowiki>{{#tag:</nowiki>''tagname''<br><nowiki>|</nowiki>''content''<br><nowiki>|</nowiki>''parameter1=value1''<br /><nowiki>|</nowiki>''parameter2=value2''<br /><nowiki>}}</nowiki></tt>
| <code><nowiki>{{#speciale:</nowiki>''special page name''<nowiki>}}</nowiki><br /><nowiki>{{#speciale:userlogin}}</nowiki></code>
| {{#speciale:special page name}}<br />{{#speciale:userlogin}}
| The localized and url-encoded name for the given canonical Special: page.
| {{mediawiki|gerrit:4340|1.20+}}
|-
| <code><nowiki>{{#tag:</nowiki>''tagname''<br><nowiki>|</nowiki>''content''<br><nowiki>|</nowiki>''attribute1=value1''<br /><nowiki>|</nowiki>''attribute2=value2''<br /><nowiki>}}</nowiki></code>
| ''(depends on parser tag)''
| ''(depends on parser tag)''
| Alias for XML-style parser or extension tags, but parsing wiki code. Inner content can be passed as first parameter, and attributes as subsequent ones:
| Alias for XML-style Mediawiki parser tags or extension tags. It allows execution of wiki code and [[Extension:ParserFunctions|parser functions]] within tags before the tag is processed. It also prevents parsing of tags in conditional paths that aren't executed (like in <code>#if</code> statements). Content between tags is passed as the first parameter, and any attributes for the tags can be passed as subsequent parameters. This example:


<code><</code>''tagname'' ''attribute1''="''value1''" ''attribute2''="''value2''"<code>></code> ''content'' <code></</code>''tagname'' <code>></code> &rarr; <code><nowiki>{{#tag:</nowiki></code>''tagname''<code><nowiki>|</nowiki></code>''content''<code><nowiki>|</nowiki></code>''attribute1''=''value1''<code><nowiki>|</nowiki></code>''attribute2''=''value2''<code><nowiki>}}</nowiki></code>
<code>&lt;tagname ''attribute1''="''value1''" ''attribute2''="''value2''"&gt;</code>''Your content goes here''<code>&lt;/tagname&gt;</code>  


'''Warning''' : You must write <code><nowiki>{{#tag:</nowiki></code>''tagname''<code><nowiki>||</nowiki></code>''attribute1''=''value1''<code><nowiki>|</nowiki></code>''attribute2''=''value2''<code><nowiki>}}</nowiki></code> to pass an empty content.
...can be rewritten like this:
 
<code><nowiki>{{#tag:</nowiki></code>''tagname''<code><nowiki>|</nowiki></code>''Your content goes here''<code><nowiki>|</nowiki></code>''attribute1''=''value1''<code><nowiki>|</nowiki></code>''attribute2''=''value2''<code><nowiki>}}</nowiki></code>
 
Example for the [[Extension:Cite|Cite extension]]'s <code>&lt;ref&gt;</code> tags:
 
<code><nowiki>{{#tag:ref|Citation text goes here, and you can include parser functions like {{#expr: ... }} and magic words like {{PAGENAME}}.|name="multiple"}}</nowiki></code>
 
<small>{{warning}}You must write <code><nowiki>{{#tag:</nowiki></code>''tagname''<code><nowiki>||</nowiki></code>''attribute1''=''value1''<code><nowiki>|</nowiki></code>''attribute2''=''value2''<code><nowiki>}}</nowiki></code> to pass an empty content. No space is permitted in the area reserved for content between the pipe characters {{!}}{{!}} before ''attribute1''.</small>
| {{mediawiki|rev:29482|1.12+}}
| {{mediawiki|rev:29482|1.12+}}
|-
| <tt><nowiki>{{gender:</nowiki>''username''<br /><nowiki>|</nowiki>''return text if user is male''<br /><nowiki>|</nowiki>''return text if user is female''<br /><nowiki>|</nowiki>''return text if user hasn't defined their gender''<nowiki>}}</nowiki></tt>
| ''(depends on the named user's gender)''
| A switch for the gender set in [[Special:Preferences]]
| {{mediawiki|rev:46247|1.15+}}
|}
|}
[[Category:Help|{{PAGENAME}}]]

Latest revision as of 15:47, 18 April 2012


Magic Words are strings of text recognised by MediaWiki which perform special functions, such as outputting the name of the current page, showing or hiding the Table of Contents, or adjusting some text for use in a URL.

Read more at: http://meta.wikimedia.org/wiki/Help:Magic_words

There are three general types of magic words:

Page-dependent magic words will affect or return data about the current page (by default), even if the word is added through a transcluded template or included system message.

Behavior switches

A behavior switch controls the layout or behavior of the page and can often be used to specify desired omissions and inclusions in the content.

Word Description Versions
Table of contents
__NOTOC__ Hides the table of contents (TOC).
__FORCETOC__ Forces the table of contents to appear at its normal position (above the first header).
__TOC__ Places a table of contents at the word's current position (overriding __NOTOC__). If this is used multiple times, the table of contents will appear at the first word's position.
Editing
__NOEDITSECTION__ Hides the section edit links beside headings. This is especially useful, where a heading is created from within a template: the normal wiki section-edit would in this case edit the template code, which is normally counterintuitive to the user. If a template contains multiple headings, it may be necessary to add "" after each heading.
__NEWSECTIONLINK__ Adds a link ("+" by default) beside the "edit" tab for adding a new section on a non-talk page (see Adding a section to the end). 1.7+
__NONEWSECTIONLINK__ Removes the link beside the "edit" tab on pages in talk namespaces. 1.15+
Categories
__NOGALLERY__ Used on a category page, replaces thumbnails in the category view with normal links. 1.7+
__HIDDENCAT__ Used on a category page, hides the category from the lists of categories in its members and parent categories (there is an option in the user preferences to show them). 1.13+
Language conversion
__NOCONTENTCONVERT__
__NOCC__
On wikis with language variants, don't perform any content language conversion (character and phase) in article display; for example, only show Chinese (zh) instead of variants like zh_cn, zh_tw, zh_sg, or zh_hk.
__NOTITLECONVERT__
__NOTC__
On wikis with language variants, don't perform language conversion on the title (all other content is converted).
Other
__START__ No effect.
__END__ Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. Removed in 19213. 1.1–1.8
__INDEX__ Tell search engines to index the page (overrides $wgArticleRobotPolicies, but not robots.txt). 1.14+
__NOINDEX__ Tell search engines not to index the page (ie, do not list in search engines' results). 1.14+
__STATICREDIRECT__ On redirect pages, don't allow MediaWiki to automatically update the link when someone moves a page and checks "Update any redirects that point to the original title". 1.13+

Variables

Variables return information about the current page, wiki, or date. Their syntax is similar to templates. Variables marked as "[expensive]" are tracked by the software, and the number that can be included on a page is limited.

If a template name conflicts with a variable, the variable will be used (so to transclude the template Template:PAGENAME you would need to write {{Template:PAGENAME}}). In some cases, adding parameters will force the parser to invoke a template; for example, {{CURRENTDAYNAME|x}} transcludes Template:CURRENTDAYNAME, not the variable.

Date and time

The following variables return the current date and time in UTC.

Due to MediaWiki and browser caching, these variables frequently show when the page was cached rather than the current time.

The date and time magic words are formatted in the wiki content language. Since Template:R, they depend on the page content language.

Variable Output Description Versions
Year
{{CURRENTYEAR}} 2024 Year
Month
{{CURRENTMONTH}} 04 Month (zero-padded number)
{{CURRENTMONTHNAME}} April Month (name)
{{CURRENTMONTHNAMEGEN}} April Month (genitive form)
{{CURRENTMONTHABBREV}} Apr Month (abbreviation) 1.5+
Day
{{CURRENTDAY}} 26 Day of the month (unpadded number)
{{CURRENTDAY2}} 26 Day of the month (zero-padded number) 1.6+
{{CURRENTDOW}} 5 Day of the week (unpadded number), 0 (for Sunday) through 6 (for Saturday)
{{CURRENTDAYNAME}} Friday Day of the week (name)
Time
{{CURRENTTIME}} 06:09 Time (24-hour HH:mm format)
{{CURRENTHOUR}} 06 Hour (24-hour zero-padded number)
Other
{{CURRENTWEEK}} 17 Week (number)
{{CURRENTTIMESTAMP}} 20240426060909 YYYYMMDDHHmmss timestamp 1.7+

The following variables do the same as the above, but using the site's server config or $wgLocaltimezone.

  • {{LOCALYEAR}}
  • {{LOCALMONTH}}
  • {{LOCALMONTHNAME}}
  • {{LOCALMONTHNAMEGEN}}
  • {{LOCALMONTHABBREV}}
  • {{LOCALDAY}}
  • {{LOCALDAY2}}
  • {{LOCALDOW}}
  • {{LOCALDAYNAME}}
  • {{LOCALTIME}}
  • {{LOCALHOUR}}
  • {{LOCALWEEK}}
  • {{LOCALTIMESTAMP}}
For more thorough time formatting, you may want to install Extension:ParserFunctions to use the #time parser function

Technical metadata

Note: Revision variables return data about the latest edit to the current page, even if viewing an older version of the page.

Variable Output Description Versions
Site
{{SITENAME}} Grand Theft Wiki The wiki's site name ($wgSitename).
{{SERVER}} //www.grandtheftwiki.com domain URL ($wgServer)
{{SERVERNAME}} www.grandtheftwiki.com domain name (No longer dependent on $wgServerName as of version 1.17)
{{DIRMARK}}
{{DIRECTIONMARK}}

Outputs a unicode-directional mark that matches the wiki's default language's direction (&lrm; on left-to-right wikis, &rlm; on right-to-left wikis), useful in text with multi-directional text. Since Template:R, it depends on the page content language. Template:R
{{SCRIPTPATH}} relative script path ($wgScriptPath)
{{STYLEPATH}} /skins relative style path ($wgStylePath) 1.16+
{{CURRENTVERSION}} 1.40.0 The wiki's MediaWiki version. Template:R
{{CONTENTLANGUAGE}}
{{CONTENTLANG}}
en-gb
en-gb
The wiki's default interface language ($wgLanguageCode) Template:R
Latest revision to current page
{{REVISIONID}} 353875 Unique revision ID 1.5+
{{REVISIONDAY}} 18 Day edit was made (unpadded number) 1.8+
{{REVISIONDAY2}} 18 Day edit was made (zero-padded number) 1.8+
{{REVISIONMONTH}} 04 Month edit was made (zero-padded number as of 1.17+, unpadded number in prior versions) 1.8+
{{REVISIONMONTH1}} 4 Month edit was made (unpadded number) 1.17+
{{REVISIONYEAR}} 2012 Year edit was made 1.8+
{{REVISIONTIMESTAMP}} 20120418154727 Timestamp as of time of edit 1.8+
{{REVISIONUSER}} Gboyers The username of the user who made the most recent edit to the page, or the current user when previewing an edit 1.15+
{{PAGESIZE:page name}}
{{PAGESIZE:page name|R}}
0
0
[expensive] Returns the byte size of the specified page. Use "|R" to get raw numbers. 1.13+
{{PROTECTIONLEVEL:action}} Outputs the protection level (e.g. 'autoconfirmed', 'sysop') for a given action (e.g. 'edit', 'move') on the current page or an empty string if not protected. 1.15+
Affects page content
{{DISPLAYTITLE:title}} Format the current page's title header. The value must be equivalent to the default title: only capitalization changes and replacing spaces with underscores are allowed (this can be changed with Template:Manual). It can be disabled or enabled by $wgAllowDisplayTitle; disabled by default before 1.10+, enabled by default thereafter. 1.7+
{{DEFAULTSORT:sortkey}}
{{DEFAULTSORTKEY:sortkey}}
{{DEFAULTCATEGORYSORT:sortkey}}
{{DEFAULTSORT:sortkey|noerror}}
{{DEFAULTSORT:sortkey|noreplace}}
Used for categorizing pages, sets a default category sort key. For example if you put {{DEFAULTSORT:Smith, John}} at the end of John Smith, the page would be sorted under "S" by default in categories. It can take a second argument of noerror or noreplace to suppress error messages when multiple defaultsortkey's are used on one page or to make it do nothing if multiple defaultsortkey's are used. 1.10+
1.19+ (for noerror and noreplace)

Statistics

Numbers returned by these variables normally contain separators (commas or spaces, depending on the local language), but can return raw numbers with the ":R" flag (for example, {{NUMBEROFPAGES}} → 56,419 and {{NUMBEROFPAGES:R}} → 56419). Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example {{PAGESINCATEGORY:Help}} and {{PAGESINCATEGORY:Help|R}}). Also applicable to {{PAGESIZE:page name}} above.

The number magic words are formatted in the wiki content language. Since Template:R, it depends on the page content language.

Variable Output Description Versions
Entire wiki
{{NUMBEROFPAGES}} 56,419 Number of wiki pages. 1.7+
{{NUMBEROFARTICLES}} 10,039 Number of pages in content namespaces.
{{NUMBEROFFILES}} 14,841 Number of uploaded files. 1.5+
{{NUMBEROFEDITS}} 390,491 Number of page edits. 1.10+
{{NUMBEROFVIEWS}} Template:NUMBEROFVIEWS Number of page views. Usually useless on a wiki using caching. 1.14+
{{NUMBEROFUSERS}} 41,900 Number of registered users. 1.7+
{{NUMBEROFADMINS}} 12 Number of users in the sysop group. 1.7+
{{NUMBEROFACTIVEUSERS}} 3 Number of active users, based on the criteria used in Special:Statistics. 1.15+
{{PAGESINCATEGORY:categoryname}}
{{PAGESINCAT:Help}}
33
33
[expensive] Number of pages in the given category. 1.13+
{{NUMBERINGROUP:groupname}}
{{NUMINGROUP:groupname}}
1
1
({{NUMBERINGROUP:bureaucrat}} used here)
Number of users in a specific group. 1.14+
{{PAGESINNS:index}}
{{PAGESINNAMESPACE:index}}
not enabled Number of pages in the given namespace (replace index with the relevant namespace index). For instance, {{PAGESINNAMESPACE:14}} will output the number of category pages. {{PAGESINNS:0}} differs from {{NUMBEROFARTICLES}} in that the former includes redirects and disambiguation pages. Disabled by default, enable with $wgAllowSlowParserFunctions. 1.7+

Page names

Variable Output Description Versions
{{FULLPAGENAME}} Help:Magic Words Namespace and page title. 1.6+
{{PAGENAME}} Magic Words Page title.
{{BASEPAGENAME}} Magic Words Page title excluding the current subpage and namespace ("Title/foo" on "Title/foo/bar").

For more complex splitting, use {{#titleparts:}} from ParserFunctions extension.

1.7+
{{SUBPAGENAME}} Magic Words The subpage title ("foo" on "Title/foo"). 1.6+
{{SUBJECTPAGENAME}}
{{ARTICLEPAGENAME}}
Help:Magic Words
Help:Magic Words
The namespace and title of the associated subject page. 1.7+
{{TALKPAGENAME}} Help talk:Magic Words The namespace and title of the associated talk page. 1.7+

The {{BASEPAGENAME}} and {{SUBPAGENAME}} magic words only work in namespaces that have subpages enabled. See Manual:$wgNamespacesWithSubpages for information on enabling subpages.

URL encoded page names

The following are equivalents encoded for use in MediaWiki URLs (i.e. spaces replaced with underscores and some characters HTML escaped using numeric character encoding):

  • {{FULLPAGENAMEE}}
  • {{PAGENAMEE}}
  • {{BASEPAGENAMEE}}
  • {{SUBPAGENAMEE}}
  • {{SUBJECTPAGENAMEE}}
  • {{ARTICLEPAGENAMEE}}
  • {{TALKPAGENAMEE}}

For example, if page name is "L'Aquila", the following code will produce the string "Numeric char encoding":

{{#switch:{{PAGENAME}}
|L'Aquila = No translation
|L = not ok
|L&apos;Aquila = Entity Escaping
|L&#39;Aquila = Numeric char encoding
}}

(See this bug for more information.)

As of 1.15+, these can all take a parameter, allowing specification of the page to be operated on, instead of just the current page:

  • {{PAGENAME:Template:Main Page}}Main Page
Warning Warning: Page titles containing certain characters, such as single quotes (') or asterisks *, may produce unexpected results when handled with these magic words, e.g. {{PAGESINCATEGORY:{{PAGENAME}}}}. See bugs 14779, 16474.

Note that {{PAGENAME}}, {{PAGENAMEE}} and {{urlencode:}} have distinct implementations. See Manual:PAGENAMEE encoding for details.

Namespaces

Variable Output Description Versions
{{NAMESPACE}} Help Name of the page's namespace
{{NAMESPACENUMBER}} 12 ID of the page's namespace 1.20+
{{SUBJECTSPACE}}
{{ARTICLESPACE}}
Help
Help
Name of the associated content namespace 1.7+
{{TALKSPACE}} Help talk Name of the associated talk namespace 1.7+

The following are equivalents encoded for use in MediaWiki URLs (spaces replaced with underscores and some characters percent-encoded):

  • {{NAMESPACEE}}
  • {{SUBJECTSPACEE}}
  • {{TALKSPACEE}}

As of 1.15+, these can take a full-page-name parameter and will return the requested namespace associated with that page, instead of with the current page:

  • {{NAMESPACE:Template:Main Page}}Template
  • {{SUBJECTSPACE:Template:Main Page}}Template
  • {{TALKSPACE:Template:Main Page}}Template talk

Parameter must not be a namespace name:

  • {{SUBJECTSPACE:Help talk}} → '

Parser functions

Parser functions are very similar to variables, but take one or more parameters (technically, any magic word that takes a parameter is a parser function), and the name is sometimes prefixed with a hash to distinguish them from templates.

This page only describes parser functions that are integral to the MediaWiki software. Other parser functions may be added by MediaWiki extensions such as the ParserFunctions extension. For those see Help:Extension:ParserFunctions.

URL data

Parser function Input → Output Description Versions
{{localurl:page name}}
{{localurl:page name|query_string}}
{{localurl:MediaWiki}} → /MediaWiki
{{localurl:MediaWiki|printable=yes}} → /index.php?title=MediaWiki&printable=yes
The relative path to the title.
{{fullurl:page name}}
{{fullurl:page name|query_string}}
{{fullurl:interwiki:remote page name|query_string}}
{{fullurl:Category:Top level}} → //www.grandtheftwiki.com/Category:Top_level

{{fullurl:Category:Top level|action=edit}} → //www.grandtheftwiki.com/index.php?title=Category:Top_level&action=edit

A protocol-relative path to the title. This will also resolve Interwiki prefixes. Note: Unbracketed (plain) protocol-relative links are not automagically linked. 1.5+
{{canonicalurl:page name}}
{{canonicalurl:page name|query_string}}
{{canonicalurl:interwiki:remote page name|query_string}}
{{canonicalurl:Category:Top level}}https://www.grandtheftwiki.com/Category:Top_level

{{canonicalurl:Category:Top level|action=edit}}https://www.grandtheftwiki.com/index.php?title=Category:Top_level&action=edit

The absolute path to the title, using the canonical url. This will also resolve Interwiki prefixes. 1.18+
{{filepath:file name}}
{{filepath:file name|nowiki}}
{{filepath:file name|thumbnail_size}}
{{filepath:Wiki.png}}https://gtwfilesie.grandtheftwiki.com/Wiki.png

{{filepath:Wiki.png|nowiki}} → https://gtwfilesie.grandtheftwiki.com/Wiki.png
{{filepath:Example.svg|300}}

The absolute URL to the full size or thumbnail (1.18+) of a media file. 1.12+
1.18+
{{urlencode:string}} (or {{urlencode:string|QUERY}})
{{urlencode:string|WIKI}}
{{urlencode:string|PATH}}
{{urlencode:x y z á é}} (or {{urlencode:x y z á é|QUERY}}) → x+y+z+%C3%A1+%C3%A9
{{urlencode:x y z á é|WIKI}} → x_y_z_%C3%A1_%C3%A9
{{urlencode:x y z á é|PATH}} → x%20y%20z%20%C3%A1%20%C3%A9

Note that the default changed from |WIKI to |QUERY in 1.17; this may break templates that rely on this function.

The input encoded for use in URLs. Note that there is no urldecode function like there is in the obsolete Extension:StringFunctions. 1.7+ (or 1.17+)
1.17+
1.17+
{{anchorencode:string}} {{anchorencode:x y z á é}} → x_y_z_á_é The input encoded for use in URL section anchors (after the '#' symbol in a URL). 1.8+

Namespaces

{{ns:}} returns the current localized name for the namespace with that index, canonical name, or local alias. Thus {{ns:6}}, {{ns:File}}, and {{ns:Image}} (an old name for the File namespace) all return "File". On a wiki where the content language was French, {{ns:Fichier}} would also be valid, but {{ns:Datei}} (the localisation of "File" into German) would not.

{{nse:}} is the equivalent encoded for MediaWiki URLs. It does the same, but it replaces spaces with underscores, making it usable in external links.

Content namespaces Talk namespaces
Usage Output Usage Output
{{ns:-2}} or {{ns:Media}} Media
{{ns:-1}} or {{ns:Special}} Special
{{ns:0}} or {{ns:}} {{ns:1}} or {{ns:Talk}} Talk
{{ns:2}} or {{ns:User}} User {{ns:3}} or {{ns:User talk}} User talk
{{ns:4}} or {{ns:Project}} Grand Theft Wiki {{ns:5}} or {{ns:Project talk}} Grand Theft Wiki talk
{{ns:6}} or {{ns:File}} or {{ns:Image}} File {{ns:7}} or {{ns:File talk}} or {{ns:Image talk}} File talk
{{ns:8}} or {{ns:MediaWiki}} MediaWiki {{ns:9}} or {{ns:MediaWiki talk}} MediaWiki talk
{{ns:10}} or {{ns:Template}} Template {{ns:11}} or {{ns:Template talk}} Template talk
{{ns:12}} or {{ns:Help}} Help {{ns:13}} or {{ns:Help talk}} Help talk
{{ns:14}} or {{ns:Category}} Category {{ns:15}} or {{ns:Category talk}} Category talk

Formatting

Usage Input → Output Description Version
{{formatnum:unformatted num}}
{{formatnum:formatted num|R}}
{{formatnum:987654321.654321}}
→ 987,654,321.654321

{{formatnum:987,654,321.654321|R}}
→ 987654321.654321
{{formatnum:{{formatnum:987.654.321}}}}
→ 987 654 321 (e.g. with Italian locale)
{{formatnum:00001}}
→ 00,001

The input with decimal and decimal group separators, and localized digit script, according to the wiki's default locale. The |R parameter can be used to unformat a number, for use in mathematical situations. It doesn't always work if you try to unformat a number in non-English format on a wiki with non-English locale; if you need to format (according the wiki's locale) a number in unknown input format, try and use formatnum two times (but not if it can have a decimal group, or its separator will be eaten or the number won't be formatted).
Warning Warning: Leading zeroes are not removed, you can use {{#expr:00001}} instead if you have Extension:ParserFunctions installed
1.7+
1.13+

{{#dateformat:date}} {{#formatdate:date}} {{#dateformat:date|format}} {{#formatdate:date|format}}

{{#dateformat:25 deC 2009|ymd}}
2009 December 25 (your pref), 2009 DeC 25 (default)
{{#formatdate:dec 25,2009|dmy}}
25 December 2009 (your pref), 25 Dec 2009 (default)
{{#dateformat:2009-12-25|mdy}}
December 25, 2009 (your pref), December 25, 2009 (default)
{{#formatdate:2009 dec 25|ISO 8601}}
2009-12-25 (your pref), 2009-12-25 (default)
{{#dateformat:25 decEmber|mdy}}
December 25 (your pref), DecEmber 25 (default)


Note: In the example above, "your pref" refers to your date preference on the current MediaWiki wiki only.

Formats an unlinked date based on user "Date format" preference, and adds metadata tagging it as a formatted date. For logged-out users and those who have not set a date format in their preferences, dates can be given a default: mdy, dmy, ymd, ISO 8601 (all case sensitive). If only the month and day are given, only mdy and dmy are valid. If a format is not specified or is invalid, the input format is used as a default. If the supplied date is not recognized as a valid date (specifically, if it contains any metadata such as from a nested use of these or similar templates), it is rendered unchanged, and no (additional) metadata is generated.
Warning Warning: Although the ISO 8601 standard requires that dates be in the Gregorian calendar, the ISO parameter in this function will still format dates that fall outside the usual Gregorian range (e.g. dates prior to 1583). Also, the magic word cannot properly convert between negative years (used with ISO 8601) and years BC or years BCE (used in general writing).
1.15+
{{lc:string}} {{lc:DATA CENTER}} → data center The lowercase input. 1.5+
{{lcfirst:string}} {{lcfirst:DATA center}} → dATA center The input with the very first character lowercase. 1.5+
{{uc:string}} {{uc:text transform}} → TEXT TRANSFORM The uppercase input. 1.5+
{{ucfirst:string}} {{ucfirst:text TRANSFORM}} → Text TRANSFORM The input with the very first character uppercase. 1.5+
{{padleft:xyz|stringlength}}
{{padleft:xyz|strlen|char}}
{{padleft:xyz|strlen|string}}
{{padleft:xyz|5}} → 00xyz
{{padleft:xyz|5|_}} → __xyz {{padleft:xyz|5|abc}} → abxyz {{padleft:xyz|2}} → xyz
{{padleft:|1|xyz}} → x (first character of the string)
Inserts a string of padding characters (character chosen in third parameter; default '0') of a specified length (second parameter) next to a chosen base character or variable (first parameter). The final digits or characters in the base replace the final characters in the padding; i.e. {{padleft:44|3|0}} produces 044. The padding string may be truncated if its length does not evenly divide the required number of characters.
bug (fixed in r45734): multibyte characters are interpreted as two characters, which can skew width. These also cannot be used as padding characters.
1.8+
{{padright:xyz|stringlength}}
{{padright:xyz|strlen|char}}
{{padright:xyz|strlen|string}}
{{padright:xyz|5}} → xyz00

{{padright:xyz|5|_}} → xyz__ {{padright:xyz|5|abc}} → xyzab {{padright:xyz|2}} → xyz
{{padright:|1|xyz}} → x

Identical to padleft, but adds padding characters to the right side.

See also: Extension:StringFunctions

Localisation

Here are the magic words which are used as main localisation tools. Other magic words will often depend on the wiki's locale and configuration or on the chosen language: see in particular #Date and time, #Formatting, #Miscellaneous.

The usage of these magic words can be very complex, and the documentation is currently incomplete; there's some more info on Plural, Grammar, Gender.

Usage Input → Output Description Version
{{plural:2|is|are}} {{plural:0|is|are}} → are
{{plural:1*1|is|are}} → is
{{plural:21 mod 10|is|are}} → are
{{plural:{{#expr:21 mod 10}}|is|are}} → is
{{plural:1|is|are}} → is
{{plural:2|is|are}} → are
(for Polish):
{{plural:2|milion|miliony|milionów}} → miliony
Outputs the singular form (second parameter) if the first parameter is an expression equalling one; the plural form (third parameter) otherwise. Its functioning is language-dependent. Plural transformations are used for languages like Russian based on "count mod 10". You should not expect this to handle fractions (like 44.5) — see bug 28128.
{{grammar:N|noun}} Outputs the correct inflected form of the given word described by the inflection code after the colon (language-dependent). Grammar transformations are used for inflected languages like Polish. See also Manual:$wgGrammarForms. 1.7+
{{gender:username
|return text if user is male
|return text if user is female
|return text if user hasn't defined their gender}}
(depends on the named user's gender) A switch for the gender set in Special:Preferences.

Note: If 3rd parameter is omitted and user hasn't defined his/her gender, then text if user is male is returned.

1.15+
{{int:message name}} {{int:edit}}Edit
(depends on user language, try: frja)
Internationalizes (translates) the given interface (MediaWiki namespace) message into the user language. Note that this can damage/confuse cache consistency in MediaWiki 1.17 and earlier, see bug 14404.
{{int:editsectionhint|MediaWiki}} {{int:editsectionhint|MediaWiki}}Edit section: MediaWiki You may also use parameters with translations.
Parameters are designated in messages with: $1, $2, $3, etc.
For example, here is the message for editsectionhint: Edit section: $1
In this example, MediaWiki replaces $1.

Miscellaneous