Difference between revisions of "Help:Magic words"
Joelmartin (talk | contribs) m (Text replacement - "<!--T:(.*)-->" to "") |
Joelmartin (talk | contribs) m |
||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{TOCRight}} | {{TOCRight}} | ||
− | |||
− | |||
'''Magic words''' are strings of text that MediaWiki associates with a return value or function, such as time, site details, or page names. This page explains only the standard magic words; for a technical reference, see {{ll|Manual:Magic words}}. | '''Magic words''' are strings of text that MediaWiki associates with a return value or function, such as time, site details, or page names. This page explains only the standard magic words; for a technical reference, see {{ll|Manual:Magic words}}. | ||
− | |||
There are three general types of magic words: | There are three general types of magic words: | ||
− | |||
* '''[[#Behavior switches|Behavior switches]]''': these are usually written as uppercase words surrounded by double underscores, ''e.g.'' '''<code>__FOO__</code>'''. | * '''[[#Behavior switches|Behavior switches]]''': these are usually written as uppercase words surrounded by double underscores, ''e.g.'' '''<code>__FOO__</code>'''. | ||
− | |||
− | |||
* '''[[#Variables|Variables]]''': these are uppercase words surrounded by double braces, ''e.g.'' '''<code><nowiki>{{FOO}}</nowiki></code>'''. As such, they look a lot like [[Special:MyLanguage/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 [[Special:MyLanguage/Help:Templates|templates]]. | ||
− | |||
− | |||
* '''[[#Parser functions|Parser functions]]''': these take parameters and are either of the form'''<code><nowiki>{{foo:...}}</nowiki></code>''' '''<code><nowiki>{{#foo:...}}</nowiki></code>''', e.g. <code><nowiki>{{#invoke:}}</nowiki></code>. See also {{ll|Help:Extension:ParserFunctions}} and {{ll|Extension:Scribunto}}. | * '''[[#Parser functions|Parser functions]]''': these take parameters and are either of the form'''<code><nowiki>{{foo:...}}</nowiki></code>''' '''<code><nowiki>{{#foo:...}}</nowiki></code>''', e.g. <code><nowiki>{{#invoke:}}</nowiki></code>. See also {{ll|Help:Extension:ParserFunctions}} and {{ll|Extension:Scribunto}}. | ||
− | |||
Variables and parser functions can use [[Special:MyLanguage/Manual:subst|subst:]], just like templates. 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. | Variables and parser functions can use [[Special:MyLanguage/Manual:subst|subst:]], just like templates. 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. | ||
− | |||
{{anchor|Behavior switches}} | {{anchor|Behavior switches}} | ||
− | |||
== Behavior switches == | == Behavior switches == | ||
− | + | A behavior switch controls the layout or behavior of the page (if supported by the skin) and can often be used to specify desired omissions and inclusions in the content. Notably some of these are not supported by the [[Skin:MinervaNeue|Minerva skin]]. | |
− | |||
− | A behavior switch controls the layout or behavior of the page (if supported by the skin) and can often be used to specify desired omissions and inclusions in the content. Notably some of these are not supported by the [[ | ||
− | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
Line 50: | Line 36: | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__NOEDITSECTION__</nowiki></code> | | colspan="2" | <code><nowiki>__NOEDITSECTION__</nowiki></code> | ||
− | | 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 usually not what the user intends. Use of this in a template will extend the effect to that template, the pages it's included on, ''and'' any other templates included on the same page. For a workaround, see [[ | + | | 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 usually not what the user intends. Use of this in a template will extend the effect to that template, the pages it's included on, ''and'' any other templates included on the same page. For a workaround, see [[m:Special:MyLanguage/Help:Editing sections of included templates|here]]. |
| | | | ||
|- | |- | ||
Line 68: | Line 54: | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__HIDDENCAT__</nowiki></code> | | colspan="2" | <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 [[<tvar|help-preferences>Special:MyLanguage/Help:Preferences | + | | 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 [[<tvar|help-preferences>Special:MyLanguage/Help:Preferences|user preferences]] to show them).<!-- hiddencategory hiddencat hide category categories --> |
| {{MW version|version=1.13|compact=y|comment=and after}} | | {{MW version|version=1.13|compact=y|comment=and after}} | ||
|- | |- | ||
Line 88: | Line 74: | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__START__</nowiki></code> | | colspan="2" | <code><nowiki>__START__</nowiki></code> | ||
− | | No effect. Was used to point where database message starts after comment that should not be transcluded. <small> Removed in | + | | No effect. Was used to point where database message starts after comment that should not be transcluded. <small> Removed in {{rev|1695}} and completely removed in {{rev|24784}}</small> |
| {{MW version|version=1.10|compact=y|comment=and before|r=1610}} | | {{MW version|version=1.10|compact=y|comment=and before|r=1610}} | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__END__</nowiki></code> | | colspan="2" | <code><nowiki>__END__</nowiki></code> | ||
− | | Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. Removed in | + | | Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. Removed in [[rev:19213|19213]]. |
| {{MW version|version=1.1|compact=y|version2=1.8}} | | {{MW version|version=1.1|compact=y|version2=1.8}} | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__INDEX__</nowiki></code> | | colspan="2" | <code><nowiki>__INDEX__</nowiki></code> | ||
− | | Tell search engines to index the page (overrides <tvar|manual-wg-bot-policy>{{mediawiki|Special:MyLanguage/Manual:$wgArticleRobotPolicies|$wgArticleRobotPolicies}} | + | | Tell search engines to index the page (overrides <tvar|manual-wg-bot-policy>{{mediawiki|Special:MyLanguage/Manual:$wgArticleRobotPolicies|$wgArticleRobotPolicies}} but not robots.txt). It obeys <tvar|manual-wg-exempt-from-bot>{{mediawiki|Special:MyLanguage/Manual:$wgExemptFromUserRobotsControl|$wgExemptFromUserRobotsControl}} variable. |
| {{MW version|version=1.14|compact=y|comment=and after}} | | {{MW version|version=1.14|compact=y|comment=and after}} | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__NOINDEX__</nowiki></code> | | colspan="2" | <code><nowiki>__NOINDEX__</nowiki></code> | ||
− | | Tell search engines not to index the page (i.e. do not list in search engines' results). It obeys <tvar|manual-wg-exempt-from-bot>{{mediawiki|Special:MyLanguage/Manual:$wgExemptFromUserRobotsControl|$wgExemptFromUserRobotsControl}} | + | | Tell search engines not to index the page (i.e. do not list in search engines' results). It obeys <tvar|manual-wg-exempt-from-bot>{{mediawiki|Special:MyLanguage/Manual:$wgExemptFromUserRobotsControl|$wgExemptFromUserRobotsControl}} variable. |
| {{MW version|version=1.14|compact=y|comment=and after|r=37973}} | | {{MW version|version=1.14|compact=y|comment=and after|r=37973}} | ||
|- | |- | ||
| colspan="2" | <code><nowiki>__STATICREDIRECT__</nowiki></code> | | colspan="2" | <code><nowiki>__STATICREDIRECT__</nowiki></code> | ||
− | | On redirect pages, don't allow MediaWiki to automatically update the link when someone moves a page and checks "<tvar|fixDoubleRedirects>{{int|Fix-double-redirects}} | + | | On redirect pages, don't allow MediaWiki to automatically update the link when someone moves a page and checks "<tvar|fixDoubleRedirects>{{int|Fix-double-redirects}}" (which requires [[<tvar|var>Special:MyLanguage/Manual:$wgFixDoubleRedirects|$wgFixDoubleRedirects]]). |
| {{MW version|version=1.13|compact=y|comment=and after|r=37928}} | | {{MW version|version=1.13|compact=y|comment=and after|r=37928}} | ||
|- | |- | ||
Line 124: | Line 110: | ||
| {{MW version|version=1.21|compact=y|comment=and after|r=}} | | {{MW version|version=1.21|compact=y|comment=and after|r=}} | ||
|} | |} | ||
− | |||
{{anchor|Variables}} | {{anchor|Variables}} | ||
− | |||
== Variables == | == Variables == | ||
+ | Variables return information about the current page, wiki, or date. Their syntax is similar to [[<tvar|help-templates>Special:MyLanguage/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 <tvar|code><code><nowiki>{{</nowiki>{{ns:10}}:PAGENAME<tvar|code-end><nowiki>}}</nowiki></code>). In some cases, adding parameters will force the parser to invoke a template; for example, <tvar|tpl-currentdayname-code><code><nowiki>{{CURRENTDAYNAME|x}}</nowiki></code> transcludes <tvar|tpl-currentdayname-result>[[{{ns:10}}:CURRENTDAYNAME]], ''not'' the variable. | |
− | |||
− | |||
− | |||
− | 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 <tvar|code><code><nowiki>{{</nowiki>{{ns:10}}: | ||
− | |||
− | |||
{{anchor|Date and time}} | {{anchor|Date and time}} | ||
− | |||
=== Date and time === | === Date and time === | ||
− | |||
The following variables return the current date and time in [[w:UTC|UTC]]. | The following variables return the current date and time in [[w:UTC|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. | ||
+ | The use of those variables cause pages to be cached for a more limited number of seconds. This is configured in <tvar|MagicWordFactory>[https://github.com/wikimedia/mediawiki/blob/master/includes/MagicWordFactory.php#L122 MagicWordFactory]. | ||
− | + | The date and time magic words are formatted in the wiki content language. Since {{r|94680|1.19}}, they depend on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang|page content language]]. | |
− | |||
− | |||
− | The date and time magic words are formatted in the wiki content language. Since {{r|94680|1.19}}, they depend on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang | ||
− | |||
{| class="wikitable" | {| class="wikitable" | ||
! Variable | ! Variable | ||
Line 241: | Line 214: | ||
− | + | The following variables do the same as the preceding ones but using the site's server config or <tvar|manual-wg-localtimezone>{{mediawiki|Special:MyLanguage/Manual:$wgLocaltimezone|$wgLocaltimezone}}. | |
− | The following variables do the same as the preceding ones but using the site's server config or <tvar|manual-wg-localtimezone>{{mediawiki|Special:MyLanguage/Manual:$wgLocaltimezone|$wgLocaltimezone}} | ||
− | |||
* <code><nowiki>{{LOCALYEAR}}</nowiki></code> | * <code><nowiki>{{LOCALYEAR}}</nowiki></code> | ||
Line 260: | Line 231: | ||
* <code><nowiki>{{LOCALTIMESTAMP}}</nowiki></code> | * <code><nowiki>{{LOCALTIMESTAMP}}</nowiki></code> | ||
− | + | ''For more thorough time formatting, or to output the current year and week with better compliance with [[wikipedia:ISO-8601|ISO-8601]], you may want to install <tvar|ext-parserfunctions>{{ll|Extension:ParserFunctions}} to use the [[<tvar|ext-parserfunct-t>Special:MyLanguage/Help:Extension:ParserFunctions#.23time|#time parser function]]''. | |
− | |||
− | ''For more thorough time formatting, or to output the current year and week with better compliance with [[wikipedia:ISO-8601|ISO-8601]], you may want to install <tvar|ext-parserfunctions>{{ll|Extension:ParserFunctions}} | ||
=== Technical metadata === | === Technical metadata === | ||
− | |||
''Note:'' 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. | ||
Line 279: | Line 247: | ||
| <code><nowiki>{{SITENAME}}</nowiki></code> | | <code><nowiki>{{SITENAME}}</nowiki></code> | ||
| {{SITENAME}} | | {{SITENAME}} | ||
− | | The wiki's site name (<tvar|manual-wg-sitename>{{mediawiki|Special:MyLanguage/Manual:$wgSitename|$wgSitename}} | + | | The wiki's site name (<tvar|manual-wg-sitename>{{mediawiki|Special:MyLanguage/Manual:$wgSitename|$wgSitename}}). |
| | | | ||
|- | |- | ||
| <code><nowiki>{{SERVER}}</nowiki></code> | | <code><nowiki>{{SERVER}}</nowiki></code> | ||
| {{SERVER}} | | {{SERVER}} | ||
− | | Domain [[w:URL|URL]] (<tvar|manual-wg-server>{{mediawiki|Special:MyLanguage/Manual:$wgServer|$wgServer}} | + | | Domain [[w:URL|URL]] (<tvar|manual-wg-server>{{mediawiki|Special:MyLanguage/Manual:$wgServer|$wgServer}}). |
| | | | ||
|- | |- | ||
| <code><nowiki>{{SERVERNAME}}</nowiki></code> | | <code><nowiki>{{SERVERNAME}}</nowiki></code> | ||
| {{SERVERNAME}} | | {{SERVERNAME}} | ||
− | | Subdomain and domain name (no longer dependent on <tvar|manual-wg-servername>{{mediawiki|Special:MyLanguage/Manual:$wgServerName|$wgServerName}} | + | | Subdomain and domain name (no longer dependent on <tvar|manual-wg-servername>{{mediawiki|Special:MyLanguage/Manual:$wgServerName|$wgServerName}} as of version 1.17). |
| | | | ||
|- | |- | ||
Line 296: | Line 264: | ||
| {{DIRMARK}} <br /> | | {{DIRMARK}} <br /> | ||
{{DIRECTIONMARK}} | {{DIRECTIONMARK}} | ||
− | | Outputs a [[w:Unicode|Unicode]] directional mark that matches the wiki's default language's direction (<code>&lrm;</code> on left-to-right wikis, <code>&rlm;</code> on right-to-left wikis), useful in text with multi-directional text. Since {{r|94680|1.19}}, it depends on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang | + | | Outputs a [[w:Unicode|Unicode]] directional mark that matches the wiki's default language's direction (<code>&lrm;</code> on left-to-right wikis, <code>&rlm;</code> on right-to-left wikis), useful in text with multi-directional text. Since {{r|94680|1.19}}, it depends on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang|page content language]]. |
| {{MW version|version=1.7|compact=y|comment=and after|r=14442}} | | {{MW version|version=1.7|compact=y|comment=and after|r=14442}} | ||
|- | |- | ||
| <code><nowiki>{{SCRIPTPATH}}</nowiki></code> | | <code><nowiki>{{SCRIPTPATH}}</nowiki></code> | ||
| {{SCRIPTPATH}} | | {{SCRIPTPATH}} | ||
− | | Relative script path (<tvar|manual-wg-scriptpath>{{mediawiki|Special:MyLanguage/Manual:$wgScriptPath|$wgScriptPath}} | + | | Relative script path (<tvar|manual-wg-scriptpath>{{mediawiki|Special:MyLanguage/Manual:$wgScriptPath|$wgScriptPath}}). |
| | | | ||
|- | |- | ||
| <code><nowiki>{{STYLEPATH}}</nowiki></code> | | <code><nowiki>{{STYLEPATH}}</nowiki></code> | ||
| {{STYLEPATH}} | | {{STYLEPATH}} | ||
− | | Relative style path (<tvar|manual-wg-stylepath>{{mediawiki|Special:MyLanguage/Manual:$wgStylePath|$wgStylePath}} | + | | Relative style path (<tvar|manual-wg-stylepath>{{mediawiki|Special:MyLanguage/Manual:$wgStylePath|$wgStylePath}}). |
| {{MW version|version=1.16|compact=y|comment=and after}} | | {{MW version|version=1.16|compact=y|comment=and after}} | ||
|- | |- | ||
Line 318: | Line 286: | ||
| {{CONTENTLANGUAGE}} <br /> | | {{CONTENTLANGUAGE}} <br /> | ||
{{CONTENTLANG}} | {{CONTENTLANG}} | ||
− | | The wiki's default interface language (<tvar|manual-wg-langcode>{{mediawiki|Special:MyLanguage/Manual:$wgLanguageCode|$wgLanguageCode}} | + | | The wiki's default interface language (<tvar|manual-wg-langcode>{{mediawiki|Special:MyLanguage/Manual:$wgLanguageCode|$wgLanguageCode}}). |
| {{MW version|version=1.7|compact=y|comment=and after|r=14661}} | | {{MW version|version=1.7|compact=y|comment=and after|r=14661}} | ||
|- | |- | ||
Line 325: | Line 293: | ||
| <code><nowiki>{{PAGEID}}</nowiki></code> | | <code><nowiki>{{PAGEID}}</nowiki></code> | ||
| {{PAGEID}} | | {{PAGEID}} | ||
− | | Returns the [[ | + | | Returns the [[Special:MyLanguage/Manual:Page table#page_id|page identifier]]. |
| {{MW version|version=1.20|compact=y|comment=and after|gerrit change=9858}} | | {{MW version|version=1.20|compact=y|comment=and after|gerrit change=9858}} | ||
|- | |- | ||
Line 354: | Line 322: | ||
| <code><nowiki>{{REVISIONID}}</nowiki></code> | | <code><nowiki>{{REVISIONID}}</nowiki></code> | ||
| {{REVISIONID}} | | {{REVISIONID}} | ||
− | | Unique revision ID. It is empty in preview, thus one can show an error message only in preview. May be disabled in [[ | + | | Unique revision ID. It is empty in preview, thus one can show an error message only in preview. May be disabled in [[Special:MyLanguage/Manual:$wgMiserMode|miser mode]]. |
| {{MW version|version=1.5|compact=y|comment=and after}} | | {{MW version|version=1.5|compact=y|comment=and after}} | ||
|- | |- | ||
Line 369: | Line 337: | ||
| <code><nowiki>{{REVISIONMONTH}}</nowiki></code> | | <code><nowiki>{{REVISIONMONTH}}</nowiki></code> | ||
| {{REVISIONMONTH}} | | {{REVISIONMONTH}} | ||
− | | Month edit was made (zero-padded number as of | + | | Month edit was made (zero-padded number as of [[rev:66200|1.17+]], unpadded number in prior versions). |
| {{MW version|version=1.8|compact=y|comment=and after}} | | {{MW version|version=1.8|compact=y|comment=and after}} | ||
|- | |- | ||
Line 401: | Line 369: | ||
| <code><nowiki>{{DISPLAYTITLE:</nowiki> ''title''<nowiki>}}</nowiki></code> <br/><code><nowiki>{{DISPLAYTITLE:</nowiki> ''title''<nowiki>|noerror}}</nowiki></code> <br/><code><nowiki>{{DISPLAYTITLE:</nowiki> ''title''<nowiki>|noreplace}}</nowiki></code> | | <code><nowiki>{{DISPLAYTITLE:</nowiki> ''title''<nowiki>}}</nowiki></code> <br/><code><nowiki>{{DISPLAYTITLE:</nowiki> ''title''<nowiki>|noerror}}</nowiki></code> <br/><code><nowiki>{{DISPLAYTITLE:</nowiki> ''title''<nowiki>|noreplace}}</nowiki></code> | ||
| | | | ||
− | | Format the current page's title header. The value must be equivalent to the default title: only capitalization changes to certain parts of the title (not all) and replacing spaces with underscores are allowed (this can be changed with <tvar|manual-wg-restrict-disp-title>{{mediawiki|Special:MyLanguage/Manual:$wgRestrictDisplayTitle|$wgRestrictDisplayTitle}} | + | | Format the current page's title header. The value must be equivalent to the default title: only capitalization changes to certain parts of the title (not all) and replacing spaces with underscores are allowed (this can be changed with <tvar|manual-wg-restrict-disp-title>{{mediawiki|Special:MyLanguage/Manual:$wgRestrictDisplayTitle|$wgRestrictDisplayTitle}}). It can be disabled or enabled by <tvar|manual-wg-allow-disp-title>{{mediawiki|Special:MyLanguage/Manual:$wgAllowDisplayTitle|$wgAllowDisplayTitle}}; disabled by default before 1.10+, enabled by default thereafter. |
It can take a second argument of ''noerror'' or ''noreplace'' to suppress error messages when multiple displaytitles are used on one page or to make this <code>displaytitle</code> do nothing if a <code>displaytitle</code> was already specified earlier in the page. | It can take a second argument of ''noerror'' or ''noreplace'' to suppress error messages when multiple displaytitles are used on one page or to make this <code>displaytitle</code> do nothing if a <code>displaytitle</code> was already specified earlier in the page. | ||
| {{MW version|version=1.7|compact=y|comment=and after}} | | {{MW version|version=1.7|compact=y|comment=and after}} | ||
Line 409: | Line 377: | ||
( for noerror and noreplace) | ( for noerror and noreplace) | ||
|- id="Defaultsort" | |- id="Defaultsort" | ||
− | | <code><nowiki>{{DEFAULTSORT:</nowiki> ''sortkey''<tvar|code1><nowiki>}}</nowiki></code> <br /><code><nowiki>{{DEFAULTSORTKEY:</nowiki | + | | <code><nowiki>{{DEFAULTSORT:</nowiki> ''sortkey''<tvar|code1><nowiki>}}</nowiki></code> <br /><code><nowiki>{{DEFAULTSORTKEY:</nowiki>''sortkey''<tvar|code2><nowiki>}}</nowiki></code> <br /><code><nowiki>{{DEFAULTCATEGORYSORT:</nowiki>''sortkey''<tvar|code3><nowiki>}}</nowiki></code> <br/><code><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<tvar|code4><nowiki>|noerror}}</nowiki></code> <br/><code><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<nowiki>|noreplace}}</nowiki></code> |
| | | | ||
− | | Used for categorizing pages, sets a default [[<tvar|help-categories>Special:MyLanguage/Help:Categories | + | | Used for categorizing pages, sets a default [[<tvar|help-categories>Special:MyLanguage/Help:Categories|category sort key]]. For example if you put <tvar|sort><code><nowiki>{{DEFAULTSORT:Smith , John<tvar|sort-end>}}</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 defaultsortkeys are used on one page or to make this <tvar|sort2><code>defaultsort</code> do nothing if a <tvar|sort3><code>defaultsort</code> was already specified earlier in the page. |
| {{MW version|version=1.10|compact=y|comment=and after}} | | {{MW version|version=1.10|compact=y|comment=and after}} | ||
Line 418: | Line 386: | ||
( for noerror and noreplace) | ( for noerror and noreplace) | ||
|} | |} | ||
− | |||
=== Statistics === | === Statistics === | ||
+ | Numbers returned by these variables normally contain separators (commas, dots or spaces, depending on the local language) but can return raw numbers with the ":R" flag (for example, <tvar|nop-code><code><nowiki>{{NUMBEROFPAGES}}</nowiki></code> → <tvar|nop-result>{{NUMBEROFPAGES}} and <tvar|nop-r-code><code><nowiki>{{NUMBEROFPAGES:R}}</nowiki></code> → <tvar|nop-r-result>{{NUMBEROFPAGES:R}}). | ||
− | + | Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example <tvar|pic><code><nowiki>{{PAGESINCATEGORY:Help}}</nowiki></code> and <tvar|pic-r><code><nowiki>{{PAGESINCATEGORY:Help|R}}</nowiki></code>, or <tvar|pic-subcats><code><nowiki>{{PAGESINCATEGORY:Help|subcats}}</nowiki></code> and <tvar|pic-subcats-r><code><nowiki>{{PAGESINCATEGORY:Help|subcats|R}}</nowiki></code>). Also applicable to <tvar|pagesize><code><nowiki>{{PAGESIZE:</nowiki>''page name''<tvar|pagesize-end><nowiki>}}</nowiki></code> hereinbefore. | |
− | |||
− | |||
− | Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example <tvar|pic><code><nowiki>{{PAGESINCATEGORY:Help}}</nowiki></code | ||
− | |||
− | The number magic words are formatted in the wiki content language. Since {{r|94680|1.19}}, it depends on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang | + | The number magic words are formatted in the wiki content language. Since {{r|94680|1.19}}, it depends on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang|page content language]]. |
{| class="wikitable" | {| class="wikitable" | ||
Line 445: | Line 409: | ||
| <code><nowiki>{{NUMBEROFARTICLES}}</nowiki></code> | | <code><nowiki>{{NUMBEROFARTICLES}}</nowiki></code> | ||
| {{NUMBEROFARTICLES}} | | {{NUMBEROFARTICLES}} | ||
− | | {{Anchor|NUMBEROFARTICLES}} Number of pages in {{ | + | | {{Anchor|NUMBEROFARTICLES}} Number of pages in {{mediawiki|Special:MyLanguage/Manual:Using custom namespaces#content-ns|content namespaces}} that qualify as articles. See {{ll|Manual:$wgArticleCountMethod}} for details. |
| | | | ||
|- | |- | ||
Line 460: | Line 424: | ||
| <code><nowiki>{{NUMBEROFVIEWS}}</nowiki></code> | | <code><nowiki>{{NUMBEROFVIEWS}}</nowiki></code> | ||
| | | | ||
− | | {{Anchor|NUMBEROFVIEWS}} Number of page views. Usually useless on a wiki using [[<tvar|manual-cache>Special:MyLanguage/Manual:Cache | + | | {{Anchor|NUMBEROFVIEWS}} Number of page views. Usually useless on a wiki using [[<tvar|manual-cache>Special:MyLanguage/Manual:Cache|caching]]. Removed in <tvar|gerrit>{{gerrit|150699}}. |
| {{MW version|version=1.14|compact=y|version2=1.24|r=42721}} | | {{MW version|version=1.14|compact=y|version2=1.24|r=42721}} | ||
|- | |- | ||
Line 470: | Line 434: | ||
| <code><nowiki>{{NUMBEROFADMINS}}</nowiki></code> | | <code><nowiki>{{NUMBEROFADMINS}}</nowiki></code> | ||
| {{NUMBEROFADMINS}} | | {{NUMBEROFADMINS}} | ||
− | | {{Anchor|NUMBEROFADMINS}} Number of users in the ''sysop'' {{<tvar|manual-userrights>mediawiki|Special:MyLanguage/Manual:User rights | + | | {{Anchor|NUMBEROFADMINS}} Number of users in the ''sysop'' {{<tvar|manual-userrights>mediawiki|Special:MyLanguage/Manual:User rights|group}}. |
| {{MW version|version=1.7|compact=y|comment=and after}} | | {{MW version|version=1.7|compact=y|comment=and after}} | ||
|- | |- | ||
Line 480: | Line 444: | ||
| {{Anchor|PAGESINCATEGORY|PAGESINCAT}}<code><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<nowiki>}}</nowiki></code> <br /><code><nowiki>{{PAGESINCAT:</nowiki>''categoryname''<nowiki>}}</nowiki></code> | | {{Anchor|PAGESINCATEGORY|PAGESINCAT}}<code><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<nowiki>}}</nowiki></code> <br /><code><nowiki>{{PAGESINCAT:</nowiki>''categoryname''<nowiki>}}</nowiki></code> | ||
| {{PAGESINCATEGORY:Help}} <br />{{PAGESINCAT:Help}} | | {{PAGESINCATEGORY:Help}} <br />{{PAGESINCAT:Help}} | ||
− | | '''[ Expensive]''' Number of pages (including subcategories and files) in the given [[<tvar|help-categories>Special:MyLanguage/Help:Categories | + | | '''[ Expensive]''' Number of pages (including subcategories and files) in the given [[<tvar|help-categories>Special:MyLanguage/Help:Categories|category]]. <small>([[:Category:Help]] used for demonstration)</small> |
| {{MW version|version=1.13|compact=y|comment=and after|r=32932}} | | {{MW version|version=1.13|compact=y|comment=and after|r=32932}} | ||
|- style="background:#FED;" | |- style="background:#FED;" | ||
− | | <code><nowiki>{{PAGESINCATEGORY:</nowiki> ''categoryname''<tvar|code1><nowiki>|all}}</nowiki></code> <br /><code><nowiki>{{PAGESINCATEGORY:</nowiki | + | | <code><nowiki>{{PAGESINCATEGORY:</nowiki> ''categoryname''<tvar|code1><nowiki>|all}}</nowiki></code> <br /><code><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<tvar|code2><nowiki>|pages}}</nowiki></code> <br /><code><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<tvar|code3><nowiki>|subcats}}</nowiki></code> <br /><code><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<nowiki>|files}}</nowiki></code> |
| {{PAGESINCATEGORY:Help|all}} <br />{{PAGESINCATEGORY:Help|pages}} <br />{{PAGESINCATEGORY:Help|subcats}} <br />{{PAGESINCATEGORY:Help|files}} | | {{PAGESINCATEGORY:Help|all}} <br />{{PAGESINCATEGORY:Help|pages}} <br />{{PAGESINCATEGORY:Help|subcats}} <br />{{PAGESINCATEGORY:Help|files}} | ||
| '''[ Expensive]''' | | '''[ Expensive]''' | ||
Line 491: | Line 455: | ||
* subcategories or | * subcategories or | ||
* files | * files | ||
− | in the given [[<tvar|help-categories>Special:MyLanguage/Help:Categories | + | in the given [[<tvar|help-categories>Special:MyLanguage/Help:Categories|category]]. <small>([[:Category:Help]] used for demonstration)</small> |
| {{MW version|version=1.20|compact=y|comment=and after|gerrit change=12790}} | | {{MW version|version=1.20|compact=y|comment=and after|gerrit change=12790}} | ||
|- | |- | ||
− | | <code><nowiki>{{NUMBERINGROUP:</nowiki> ''groupname''<tvar|code1><nowiki>}}</nowiki></code> <br /><code><nowiki>{{NUMINGROUP:</nowiki | + | | <code><nowiki>{{NUMBERINGROUP:</nowiki> ''groupname''<tvar|code1><nowiki>}}</nowiki></code> <br /><code><nowiki>{{NUMINGROUP:</nowiki>''groupname''<nowiki>}}</nowiki></code> |
| {{Anchor|NUMBERINGROUP|NUMINGROUP}}{{NUMBERINGROUP:bureaucrat}} <br />{{NUMINGROUP:bureaucrat}} <br /><small><nowiki>({{NUMBERINGROUP:bureaucrat}} used here)</nowiki></small> | | {{Anchor|NUMBERINGROUP|NUMINGROUP}}{{NUMBERINGROUP:bureaucrat}} <br />{{NUMINGROUP:bureaucrat}} <br /><small><nowiki>({{NUMBERINGROUP:bureaucrat}} used here)</nowiki></small> | ||
− | | Number of users in a specific {{<tvar|manual-userrights>mediawiki|Special:MyLanguage/Manual:User rights | + | | Number of users in a specific {{<tvar|manual-userrights>mediawiki|Special:MyLanguage/Manual:User rights|group}}. |
| {{MW version|version=1.14|compact=y|comment=and after|r=40116}} | | {{MW version|version=1.14|compact=y|comment=and after|r=40116}} | ||
|- style="background:#FED;" | |- style="background:#FED;" | ||
− | | <code><nowiki>{{PAGESINNS:</nowiki> ''index''<tvar|code1><nowiki>}}</nowiki></code> <br /><code><nowiki>{{PAGESINNAMESPACE:</nowiki | + | | <code><nowiki>{{PAGESINNS:</nowiki> ''index''<tvar|code1><nowiki>}}</nowiki></code> <br /><code><nowiki>{{PAGESINNAMESPACE:</nowiki>''index''<nowiki>}}</nowiki></code> |
| ''Not enabled'' | | ''Not enabled'' | ||
− | | {{Anchor|PAGESINNS|PAGESINNAMESPACE}} '''[ Expensive]''' Number of pages in the given [[<tvar|help-ns>Special:MyLanguage/Help:Namespaces | + | | {{Anchor|PAGESINNS|PAGESINNAMESPACE}} '''[ Expensive]''' Number of pages in the given [[<tvar|help-ns>Special:MyLanguage/Help:Namespaces|namespace]] (replace ''index'' with the relevant [[<tvar|manual-ns>Special:MyLanguage/Manual:Namespace|namespace index]]). For instance, <tvar|pins14><code><nowiki>{{PAGESINNAMESPACE:</nowiki>''14''<nowiki>}}</nowiki></code> will output the number of category pages. <tvar|pins0><code><nowiki>{{PAGESINNS:0}}</nowiki></code> differs from <tvar|noa><code><nowiki>{{NUMBEROFARTICLES}}</nowiki></code> in that the former includes redirects and disambiguation pages. Disabled by default, enable with <tvar|manual-wg-allow-slow-parser-funct>{{mediawiki|Special:MyLanguage/Manual:$wgAllowSlowParserFunctions|$wgAllowSlowParserFunctions}}. |
| {{MW version|version=1.7|compact=y|comment=and after}} | | {{MW version|version=1.7|compact=y|comment=and after}} | ||
|} | |} | ||
Line 530: | Line 494: | ||
| {{BASEPAGENAME}} | | {{BASEPAGENAME}} | ||
| {{Anchor|BASEPAGENAME|basepagename}} | | {{Anchor|BASEPAGENAME|basepagename}} | ||
− | Page title of the page in the immediately superior [[<tvar|help-subpages>Special:MyLanguage/Help:Subpages | + | Page title of the page in the immediately superior [[<tvar|help-subpages>Special:MyLanguage/Help:Subpages|subpage]] level without the namespace ("Title/foo" on "Help:Title/foo/bar"). |
− | For more complex splitting, use <tvar|help-ext-pf-titleparts><code><nowiki>{{</nowiki>[[Special:MyLanguage/Help:Extension:ParserFunctions#.23titleparts|#titleparts:]]<nowiki>}}</nowiki></code | + | For more complex splitting, use <tvar|help-ext-pf-titleparts><code><nowiki>{{</nowiki>[[Special:MyLanguage/Help:Extension:ParserFunctions#.23titleparts|#titleparts:]]<nowiki>}}</nowiki></code> from the [[<tvar|help-ext-pf>Special:MyLanguage/Help:Extension:ParserFunctions|ParserFunctions extension]]. |
| {{MW version|version=1.7|compact=y|comment=and after}} | | {{MW version|version=1.7|compact=y|comment=and after}} | ||
|- | |- | ||
| {{Anchor|SUBPAGENAME|subpagename}}<code><nowiki>{{SUBPAGENAME}}</nowiki></code> | | {{Anchor|SUBPAGENAME|subpagename}}<code><nowiki>{{SUBPAGENAME}}</nowiki></code> | ||
| {{SUBPAGENAME}} | | {{SUBPAGENAME}} | ||
− | | The [[<tvar|help-subpages>Special:MyLanguage/Help:Subpages | + | | The [[<tvar|help-subpages>Special:MyLanguage/Help:Subpages|subpage]] title ("bar" on "Help:Title/foo/bar"). If no subpage exists the value of <tvar|code><code><nowiki>{{PAGENAME}}</nowiki></code> is returned. |
| {{MW version|version=1.6|compact=y|comment=and after}} | | {{MW version|version=1.6|compact=y|comment=and after}} | ||
|- | |- | ||
Line 553: | Line 517: | ||
| {{Anchor|ROOTPAGENAME|rootpagename}}<code><nowiki>{{ROOTPAGENAME}}</nowiki></code> | | {{Anchor|ROOTPAGENAME|rootpagename}}<code><nowiki>{{ROOTPAGENAME}}</nowiki></code> | ||
| {{ROOTPAGENAME}} | | {{ROOTPAGENAME}} | ||
− | | Name of the root of the current page. Would return <tvar|foo><code>Title</code | + | | Name of the root of the current page. Would return <tvar|foo><code>Title</code> on page <tvar|baz><code>Help:Title/Foo/Bar</code> |
| {{MW version|version=1.22|compact=y|comment=and after}} | | {{MW version|version=1.22|compact=y|comment=and after}} | ||
|} | |} | ||
Line 561: | Line 525: | ||
− | The <tvar|basepagename><code><nowiki>{{BASEPAGENAME}}</nowiki></code | + | The <tvar|basepagename><code><nowiki>{{BASEPAGENAME}}</nowiki></code> and <tvar|subpagename><code><nowiki>{{SUBPAGENAME}}</nowiki></code> magic words only work in namespaces that have subpages enabled. See <tvar|manual-wg-ns-with-subpages>{{mediawiki|Special:MyLanguage/Manual:$wgNamespacesWithSubpages|$wgNamespacesWithSubpages}} for information on enabling subpages. |
− | As of | + | As of [[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: |
* <code><nowiki>{{PAGENAME:Template:Main Page}}</nowiki></code> → '''{{PAGENAME:Template:Main Page}}''' | * <code><nowiki>{{PAGENAME:Template:Main Page}}</nowiki></code> → '''{{PAGENAME:Template:Main Page}}''' | ||
Line 573: | Line 537: | ||
}} | }} | ||
− | {{Warning|1= Page titles containing certain characters, such as apostrophes <code>'</code> or asterisks <code>*</code>, may produce unexpected results when handled with these magic words, e.g. <tvar|pic><code><nowiki>{{PAGESINCATEGORY:{{PAGENAME}}}}</nowiki></code | + | {{Warning|1= Page titles containing certain characters, such as apostrophes <code>'</code> or asterisks <code>*</code>, may produce unexpected results when handled with these magic words, e.g. <tvar|pic><code><nowiki>{{PAGESINCATEGORY:{{PAGENAME}}}}</nowiki></code>. See bugs [[phabricator:T16779|T16779]], [[phabricator:T18474|T18474]], [[phabricator:T37628|T37628]], [[phabricator:T37746|T37746]]. One simple way to fix this is wrapping the pagename in <tvar|titleparts><code><nowiki>{{</nowiki>[[Special:MyLanguage/Help:Extension:ParserFunctions#.23titleparts|#titleparts:]]<nowiki>}}</nowiki></code> from the [[<tvar|help-ext-pf>Special:MyLanguage/Help:Extension:ParserFunctions|ParserFunctions extension]]. |
}} | }} | ||
Line 594: | Line 558: | ||
− | Note that <tvar|pagename><code><nowiki>{{PAGENAME:...}}</nowiki></code | + | Note that <tvar|pagename><code><nowiki>{{PAGENAME:...}}</nowiki></code>, <tvar|pagenamee><code><nowiki>{{PAGENAMEE:...}}</nowiki></code> and <tvar|uec><code><nowiki>{{urlencode:...}}</nowiki></code> have distinct implementations. See [[<tvar|manual-pagename-encoding>Special:MyLanguage/Manual:PAGENAMEE encoding|Manual:PAGENAMEE encoding]] for details. |
Line 616: | Line 580: | ||
| <code><nowiki>{{NAMESPACENUMBER}}</nowiki></code> | | <code><nowiki>{{NAMESPACENUMBER}}</nowiki></code> | ||
| {{NAMESPACENUMBER}} | | {{NAMESPACENUMBER}} | ||
− | | [[<tvar|manual-ns-id>Special:MyLanguage/Manual:Namespace#Built-in_namespaces | + | | [[<tvar|manual-ns-id>Special:MyLanguage/Manual:Namespace#Built-in_namespaces|ID]] of the page's namespace |
| {{MW version|version=1.20|compact=y|comment=and after|gerrit change=4056}} | | {{MW version|version=1.20|compact=y|comment=and after|gerrit change=4056}} | ||
|- | |- | ||
Line 642: | Line 606: | ||
− | As of | + | As of [[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: |
Line 678: | Line 642: | ||
− | 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 <tvar|ext-pf>{{ll|Extension:ParserFunctions}} | + | 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 <tvar|ext-pf>{{ll|Extension:ParserFunctions}}. For those see <tvar|help-ext-pf>{{ll|Help:Extension:ParserFunctions}}. |
=== Technical metadata of another page === | === Technical metadata of another page === | ||
Line 697: | Line 661: | ||
| <code><nowiki>{{PAGESIZE:</nowiki>'' page name''<nowiki>}}</nowiki></code> <br /><code><nowiki>{{PAGESIZE: </nowiki>'' page name''<nowiki> |R}}</nowiki></code> | | <code><nowiki>{{PAGESIZE:</nowiki>'' page name''<nowiki>}}</nowiki></code> <br /><code><nowiki>{{PAGESIZE: </nowiki>'' page name''<nowiki> |R}}</nowiki></code> | ||
| {{PAGESIZE: MediaWiki }} <br />{{PAGESIZE: MediaWiki |R}} | | {{PAGESIZE: MediaWiki }} <br />{{PAGESIZE: MediaWiki |R}} | ||
− | | '''[ Expensive]''' Returns the byte size of the specified page. Use "<tvar|r><code><nowiki>|R</nowiki></code | + | | '''[ Expensive]''' Returns the byte size of the specified page. Use "<tvar|r><code><nowiki>|R</nowiki></code>" to get raw (unformatted) numbers. |
| {{Anchor|PAGESIZE}}{{MW version|version=1.13|compact=y|comment=and after|r=33551}}{{Anchor|PROTECTIONLEVEL:}} | | {{Anchor|PAGESIZE}}{{MW version|version=1.13|compact=y|comment=and after|r=33551}}{{Anchor|PROTECTIONLEVEL:}} | ||
|- style="background: #FED;" | |- style="background: #FED;" | ||
Line 734: | Line 698: | ||
| <code><nowiki>{{REVISIONMONTH: </nowiki> ''page name''<nowiki> }}</nowiki></code> | | <code><nowiki>{{REVISIONMONTH: </nowiki> ''page name''<nowiki> }}</nowiki></code> | ||
| {{REVISIONMONTH: MediaWiki }} | | {{REVISIONMONTH: MediaWiki }} | ||
− | | '''[ Expensive]''' Month of edit from the last revision of the specified page* (zero-padded number as of | + | | '''[ Expensive]''' Month of edit from the last revision of the specified page* (zero-padded number as of [[rev:66200|1.17+]], unpadded number in prior versions). |
| {{MW version|version=1.23|compact=y|comment=and after|gerrit change=76534}}{{Anchor|REVISIONMONTH1:}} | | {{MW version|version=1.23|compact=y|comment=and after|gerrit change=76534}}{{Anchor|REVISIONMONTH1:}} | ||
|- style="background: #FED;" | |- style="background: #FED;" | ||
Line 785: | Line 749: | ||
<code><nowiki>{{fullurl:s:Electra|action=edit}}</nowiki></code><br />→ {{fullurl:s:Electra|action=edit}}<br /> | <code><nowiki>{{fullurl:s:Electra|action=edit}}</nowiki></code><br />→ {{fullurl:s:Electra|action=edit}}<br /> | ||
<code><nowiki>{{fullurl:s:es:Electra|action=edit}}</nowiki></code><br />→ {{fullurl:s:es:Electra|action=edit}} | <code><nowiki>{{fullurl:s:es:Electra|action=edit}}</nowiki></code><br />→ {{fullurl:s:es:Electra|action=edit}} | ||
− | | A protocol-relative path to the title, which depends on the [[<tvar|manual-wg-server>Special:MyLanguage/Manual:$wgServer | + | | A protocol-relative path to the title, which depends on the [[<tvar|manual-wg-server>Special:MyLanguage/Manual:$wgServer|$wgServer configuration setting]] for the local wiki (and so may or may not start with <tvar|prefix><code>http(s)://</code>). This will also resolve [[<tvar|manual-interwiki>Special:MyLanguage/Manual:Interwiki|interwiki]] prefixes. '''Note:''' Unbracketed (plain) protocol-relative links are not automagically linked. |
| {{MW version|version=1.5|compact=y|comment=and after}} | | {{MW version|version=1.5|compact=y|comment=and after}} | ||
|- | |- | ||
Line 793: | Line 757: | ||
| <code><nowiki>{{canonicalurl:Category:Top level}}</nowiki></code><br />→ {{canonicalurl:Category:Top level}} <br /> | | <code><nowiki>{{canonicalurl:Category:Top level}}</nowiki></code><br />→ {{canonicalurl:Category:Top level}} <br /> | ||
<code><nowiki>{{canonicalurl:Category:Top level|action=edit}}</nowiki></code><br />→ {{canonicalurl:Category:Top level|action=edit}} | <code><nowiki>{{canonicalurl:Category:Top level|action=edit}}</nowiki></code><br />→ {{canonicalurl:Category:Top level|action=edit}} | ||
− | | The absolute path to the title, using the canonical URL. This will also resolve [[<tvar|manual-interwiki>Special:MyLanguage/Manual:Interwiki | + | | The absolute path to the title, using the canonical URL. This will also resolve [[<tvar|manual-interwiki>Special:MyLanguage/Manual:Interwiki|interwiki]] prefixes. |
| {{MW version|version=1.18|compact=y|comment=and after}} | | {{MW version|version=1.18|compact=y|comment=and after}} | ||
|- | |- | ||
Line 803: | Line 767: | ||
<code><nowiki>{{filepath:Example.svg|300}}</nowiki></code><br />→ {{filepath:Example.svg|300}} <br /><br /> | <code><nowiki>{{filepath:Example.svg|300}}</nowiki></code><br />→ {{filepath:Example.svg|300}} <br /><br /> | ||
The parameter <code>nowiki</code> usually removes the link around the filepath (which can't be seen in this example). | The parameter <code>nowiki</code> usually removes the link around the filepath (which can't be seen in this example). | ||
− | | A protocol-relative path to the full size or thumbnail ( | + | | A protocol-relative path to the full size or thumbnail ([[rev:80813|1.18+]]) of a media file. |
| {{MW version|version=1.12|compact=y|comment=and after|r=25854}} <br />{{MW version|version=1.18|compact=y|comment=and after|r=80813}} | | {{MW version|version=1.12|compact=y|comment=and after|r=25854}} <br />{{MW version|version=1.18|compact=y|comment=and after|r=80813}} | ||
|- | |- | ||
|colspan="4"| {{Anchor|urlencode|URLENCODE}} | |colspan="4"| {{Anchor|urlencode|URLENCODE}} | ||
|- | |- | ||
− | | <code><nowiki>{{urlencode:</nowiki> ''string''<tvar|code1><nowiki>}}</nowiki></code | + | | <code><nowiki>{{urlencode:</nowiki> ''string''<tvar|code1><nowiki>}}</nowiki></code> or <br /><tvar|code2><code><nowiki>{{urlencode:</nowiki>''string''<tvar|code3><nowiki>|QUERY}}</nowiki></code> <tvar|code4><br /><code><nowiki>{{urlencode:</nowiki>''string''<tvar|code5><nowiki>|WIKI}}</nowiki></code> <br /><code><nowiki>{{urlencode:</nowiki>''string''<nowiki>|PATH}}</nowiki></code> |
| <code><nowiki>{{urlencode:x:y/z á é}}</nowiki></code> or <br /><code><nowiki>{{urlencode:x:y/z á é|QUERY}}</nowiki></code><br />→ {{urlencode:x:y/z á é}} <br /><code><nowiki>{{urlencode:x:y/z á é|WIKI}}</nowiki></code><br />→ {{urlencode:x:y/z á é|WIKI}} <br /><code><nowiki>{{urlencode:x:y/z á é|PATH}}</nowiki></code><br />→ {{urlencode:x:y/z á é|PATH}} | | <code><nowiki>{{urlencode:x:y/z á é}}</nowiki></code> or <br /><code><nowiki>{{urlencode:x:y/z á é|QUERY}}</nowiki></code><br />→ {{urlencode:x:y/z á é}} <br /><code><nowiki>{{urlencode:x:y/z á é|WIKI}}</nowiki></code><br />→ {{urlencode:x:y/z á é|WIKI}} <br /><code><nowiki>{{urlencode:x:y/z á é|PATH}}</nowiki></code><br />→ {{urlencode:x:y/z á é|PATH}} | ||
− | Note that the default changed from <tvar|wiki><code>|WIKI</code | + | Note that the default changed from <tvar|wiki><code>|WIKI</code> to <tvar|query><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 <tvar|ext-stringfunctions>{{ll|Extension:StringFunctions}} | + | | The input encoded for use in URLs. Note that there is no urldecode function like there is in the obsolete <tvar|ext-stringfunctions>{{ll|Extension:StringFunctions}}.<br /><table class="wikitable"><caption> Encoding</caption><tr><th> code</th><th> space</th></tr><tr><td> ''none''</td><td><samp> + </samp></td></tr><tr><td><kbd>QUERY</kbd></td><td><samp> + </samp></td></tr><tr><td><kbd> WIKI</kbd></td><td><samp> _ </samp></td></tr><tr><td><kbd> PATH</kbd></td><td><samp>%20</samp></td></tr></table> |
| {{MW version|version=1.7|compact=y|comment=and after|r=14273}} (or {{MW version|version=1.17|compact=y|comment=and after|r=64726}} <br />{{MW version|version=1.17|compact=y|comment=and after|r=64726}} <br />{{MW version|version=1.17|compact=y|comment=and after|r=64726}}) | | {{MW version|version=1.7|compact=y|comment=and after|r=14273}} (or {{MW version|version=1.17|compact=y|comment=and after|r=64726}} <br />{{MW version|version=1.17|compact=y|comment=and after|r=64726}} <br />{{MW version|version=1.17|compact=y|comment=and after|r=64726}}) | ||
|- | |- | ||
Line 827: | Line 791: | ||
− | <tvar|ns><code><nowiki>{{ns:}}</nowiki></code | + | <tvar|ns><code><nowiki>{{ns:}}</nowiki></code> returns the current localized name for the [[<tvar|help-ns>Special:MyLanguage/Help:Namespace|namespace]] with that index, canonical name, or local alias. Thus <tvar|ns6><code><nowiki>{{ns:6}}</nowiki></code>, <tvar|ns-file><code><nowiki>{{ns:File}}</nowiki></code>, and <tvar|ns-img><code><nowiki>{{ns:Image}}</nowiki></code> (an old name for the File namespace) all return "{{ns:6}}". On a wiki where the content language is French, <tvar|ns-file-de><code><nowiki>{{ns:Fichier}}</nowiki></code> is also valid, but <tvar|ns-file-incorrect><code><nowiki>{{ns:Datei}}</nowiki></code> (the localisation of "File" in German) is not. |
− | <tvar|nse><code><nowiki>{{nse:}}</nowiki></code | + | <tvar|nse><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" | {| class="wikitable" | ||
Line 891: | Line 855: | ||
− | Don't confuse localised namespaces with [[<tvar|manual-custom-ns>Special:MyLanguage/Manual:Using custom namespaces | + | Don't confuse localised namespaces with [[<tvar|manual-custom-ns>Special:MyLanguage/Manual:Using custom namespaces|custom namespaces]]. |
Line 934: | Line 898: | ||
The <code>NOSEP</code> ("no separators") parameter means that no group / decimal separators are changed; formatnum will only transform the digits themselves in languages which don't use the [[w:en:Hindu–Arabic numeral system|Hindu–Arabic numeral system]]. <code>NOSEP</code> can also prevent non-standard digit groupings you wouldn't expect. | The <code>NOSEP</code> ("no separators") parameter means that no group / decimal separators are changed; formatnum will only transform the digits themselves in languages which don't use the [[w:en:Hindu–Arabic numeral system|Hindu–Arabic numeral system]]. <code>NOSEP</code> can also prevent non-standard digit groupings you wouldn't expect. | ||
− | {{warning|1= Leading zeroes are not removed, you can use <nowiki>{{#expr:00001}}</nowiki> instead if you have <tvar|ext-pf>{{ll|Extension:ParserFunctions}} | + | {{warning|1= Leading zeroes are not removed, you can use <nowiki>{{#expr:00001}}</nowiki> instead if you have <tvar|ext-pf>{{ll|Extension:ParserFunctions}} installed.}}<br /> |
{{warning|1= If you don't input numbers in the exact format required, don't expect any reliable output, especially on non-English wikis.}}<br /> | {{warning|1= If you don't input numbers in the exact format required, don't expect any reliable output, especially on non-English wikis.}}<br /> | ||
Line 1,008: | Line 972: | ||
− | '''[[ | + | '''[[bugzilla:16852|Bug]] (fixed in [[rev:45734|r45734]]):''' multibyte characters are interpreted as two characters, which can skew width. These also cannot be used as padding characters. |
| {{MW version|version=1.8|compact=y|comment=and after}} | | {{MW version|version=1.8|compact=y|comment=and after}} | ||
|- | |- | ||
Line 1,021: | Line 985: | ||
|} | |} | ||
− | '''See also:''' <tvar|ext-stringfunctions>{{ll|Extension:StringFunctions}} | + | '''See also:''' <tvar|ext-stringfunctions>{{ll|Extension:StringFunctions}}. |
Line 1,029: | Line 993: | ||
− | 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 [[<tvar|date>#Date and time | + | 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 [[<tvar|date>#Date and time|#Date and time]], [[<tvar|formatting>#Formatting|#Formatting]], [[<tvar|misc>#Miscellaneous|#Miscellaneous]]. More magic words are added by the <tvar|ext-translate>{{ll|Extension:Translate}}. |
Line 1,043: | Line 1,007: | ||
| <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 /><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 /><code><nowiki>{{plural:0.5|is|are}}</nowiki></code> → {{plural:0.5|is|are}}<br /><code><nowiki>{{plural:1.5|is|are}}</nowiki></code> → {{plural:1.5|is|are}}<br /><code><nowiki>{{plural:-0.5|is|are}}</nowiki></code> → {{plural:-0.5|is|are}}<br /><code><nowiki>{{plural:-1.5|is|are}}</nowiki></code> → {{plural:-1.5|is|are}}<br /> (For [[w:Russian language|Russian]])<br /><code><nowiki>{{PLURAL:5|1=Категория|Категории}} </nowiki></code> → Категории | | <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 /><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 /><code><nowiki>{{plural:0.5|is|are}}</nowiki></code> → {{plural:0.5|is|are}}<br /><code><nowiki>{{plural:1.5|is|are}}</nowiki></code> → {{plural:1.5|is|are}}<br /><code><nowiki>{{plural:-0.5|is|are}}</nowiki></code> → {{plural:-0.5|is|are}}<br /><code><nowiki>{{plural:-1.5|is|are}}</nowiki></code> → {{plural:-1.5|is|are}}<br /> (For [[w:Russian language|Russian]])<br /><code><nowiki>{{PLURAL:5|1=Категория|Категории}} </nowiki></code> → Категории | ||
<br /><code><nowiki>{{PLURAL:3|страница|страницы|страниц}}</nowiki></code> → страницы<br /><code><nowiki>{{PLURAL:5|страница|страницы|страниц}}</nowiki></code> → страниц | <br /><code><nowiki>{{PLURAL:3|страница|страницы|страниц}}</nowiki></code> → страницы<br /><code><nowiki>{{PLURAL:5|страница|страницы|страниц}}</nowiki></code> → страниц | ||
− | | Outputs the singular form (second parameter) if the absolute value of the first parameter is an expression equalling one; the plural form (third parameter) otherwise. Its functioning is [[<tvar|meta-help-magicwords>m:Special:MyLanguage/Help:Magic_words#Language-dependent_word_conversions | + | | Outputs the singular form (second parameter) if the absolute value of the first parameter is an expression equalling one; the plural form (third parameter) otherwise. Its functioning is [[<tvar|meta-help-magicwords>m:Special:MyLanguage/Help:Magic_words#Language-dependent_word_conversions|language-dependent]]. |
{{note|1= Some language codes (ab, av, ba, bxr, ce, crh_cyrl, cv, inh, koi, krc, kv, lbe, lez, mhr, mrj, myv, ru, tt_cyrl, tyv, udm, xal) used 3 plural forms ([[betawiki:Thread:Portal talk:Ru/Plural changes in many languages|updated 01.2014]]): | {{note|1= Some language codes (ab, av, ba, bxr, ce, crh_cyrl, cv, inh, koi, krc, kv, lbe, lez, mhr, mrj, myv, ru, tt_cyrl, tyv, udm, xal) used 3 plural forms ([[betawiki:Thread:Portal talk:Ru/Plural changes in many languages|updated 01.2014]]): | ||
* Form 1: 1, 21, 31, 41, 51, 61, 71, 81, 101, 1001, … | * Form 1: 1, 21, 31, 41, 51, 61, 71, 81, 101, 1001, … | ||
Line 1,053: | Line 1,017: | ||
| {{Anchor|grammar|Grammar|GRAMMAR}}<code><nowiki>{{grammar:N|</nowiki>''noun''<nowiki>}}</nowiki></code> | | {{Anchor|grammar|Grammar|GRAMMAR}}<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 ([[<tvar|meta-help-magicwords>m:Special:MyLanguage/Help:Magic_words#Language-dependent_word_conversions | + | | Outputs the correct inflected form of the given word described by the inflection code after the colon ([[<tvar|meta-help-magicwords>m:Special:MyLanguage/Help:Magic_words#Language-dependent_word_conversions|language-dependent]]). Grammar transformations are used for inflected languages like Polish. See also <tvar|manual-wg-grammarform>{{mediawiki|Special:MyLanguage/Manual:$wgGrammarForms|$wgGrammarForms}}. |
| {{MW version|version=1.7|compact=y|comment=and after}} | | {{MW version|version=1.7|compact=y|comment=and after}} | ||
|- | |- | ||
Line 1,064: | Line 1,028: | ||
A switch for the gender set in [[Special:Preferences]]. <br/> | A switch for the gender set in [[Special:Preferences]]. <br/> | ||
''Note:'' The first example is basically a no-op<br/> | ''Note:'' The first example is basically a no-op<br/> | ||
− | ''Note:'' If 3rd parameter is omitted and user hasn't defined their gender, then <code>''text if user is male''</code> is returned.<br>A blank username field (<tvar|gender><nowiki>{{gender:|</nowiki | + | ''Note:'' If 3rd parameter is omitted and user hasn't defined their gender, then <code>''text if user is male''</code> is returned.<br>A blank username field (<tvar|gender><nowiki>{{gender:|</nowiki>) means the current user, but can be used only in interface messages (MediaWiki namespace).<br> |
A dot username (.) means the default user gender on this wiki. | A dot username (.) means the default user gender on this wiki. | ||
| {{MW version|version=1.15|compact=y|comment=and after|r=46247}} | | {{MW version|version=1.15|compact=y|comment=and after|r=46247}} | ||
Line 1,071: | Line 1,035: | ||
| <code><nowiki>{{int:</nowiki>edit<nowiki>}}</nowiki></code> → '''{{int:edit}}''' <br /><small>'' (Depends on user language; try: [{{fullurl:{{FULLPAGENAME}}|uselang=fr}}#Localisation fr] • [{{fullurl:{{FULLPAGENAME}}|uselang=ja}}#Localisation ja])''</small> | | <code><nowiki>{{int:</nowiki>edit<nowiki>}}</nowiki></code> → '''{{int:edit}}''' <br /><small>'' (Depends on user language; try: [{{fullurl:{{FULLPAGENAME}}|uselang=fr}}#Localisation fr] • [{{fullurl:{{FULLPAGENAME}}|uselang=ja}}#Localisation ja])''</small> | ||
| | | | ||
− | Internationalizes (translates) the given '''int'''erface (MediaWiki namespace) message into the user language. For <code>msgnw</code> and other transclusion magic words, see the [[<tvar|sec>#Transclusion modifiers | + | Internationalizes (translates) the given '''int'''erface (MediaWiki namespace) message into the user language. For <code>msgnw</code> and other transclusion magic words, see the [[<tvar|sec>#Transclusion modifiers|Transclusion modifiers]] section. |
''Note that this can damage / confuse cache consistency in MediaWiki 1.17 and earlier, see [[phab:T16404|T16404]].'' | ''Note that this can damage / confuse cache consistency in MediaWiki 1.17 and earlier, see [[phab:T16404|T16404]].'' | ||
| | | | ||
Line 1,100: | Line 1,064: | ||
| <code><nowiki>{{:xyz}}</nowiki></code> | | <code><nowiki>{{:xyz}}</nowiki></code> | ||
| | | | ||
− | | A bare colon is not a template modifier but the prefix for the main namespace. Since transclusion defaults to the Template namespace, you would use for example, <tvar|code1>{{:UTC}} | + | | A bare colon is not a template modifier but the prefix for the main namespace. Since transclusion defaults to the Template namespace, you would use for example, <tvar|code1>{{:UTC}} (vs. <tvar|code2>{{UTC}}) to include the text of the main namespace article UTC rather than Template:UTC. |
| | | | ||
|- | |- | ||
| <code><nowiki>{{int:xyz}}</nowiki></code> | | <code><nowiki>{{int:xyz}}</nowiki></code> | ||
| | | | ||
− | | Same as <tvar|mw><nowiki>{{MediaWiki:xyz}}</nowiki | + | | Same as <tvar|mw><nowiki>{{MediaWiki:xyz}}</nowiki>, except standard message translation is applied depending on subpages and content/user/uselang language. Another difference is: this doesn't appear under "<tvar|translatesused>{{int|templatesused}}". Rendered as <tvar|int>{{int:xyz}} if <tvar|mw>[[MediaWiki:xyz]] doesn't exist. See also {{ll|Help:System message}}. |
| | | | ||
|- | |- | ||
| <code><nowiki>{{msg:xyz}}</nowiki></code><br /><code><nowiki>{{raw:xyz}}</nowiki></code> | | <code><nowiki>{{msg:xyz}}</nowiki></code><br /><code><nowiki>{{raw:xyz}}</nowiki></code> | ||
| | | | ||
− | | Even if there is a magic word named "xyz", use template:xyz unless the template doesn't exist (equivalent to <tvar|code><nowiki>{{template:xyz}}</nowiki | + | | Even if there is a magic word named "xyz", use template:xyz unless the template doesn't exist (equivalent to <tvar|code><nowiki>{{template:xyz}}</nowiki>). Normally, magic words have priority when there is a conflict. |
| | | | ||
|- | |- | ||
Line 1,120: | Line 1,084: | ||
| <code><nowiki>{{msgnw:xyz}}</nowiki></code> | | <code><nowiki>{{msgnw:xyz}}</nowiki></code> | ||
| | | | ||
− | | The unexpanded wikitext is rendered (more or less, for details see <tvar|msgnw>{{ll|Help:Template#Usage}} | + | | The unexpanded wikitext is rendered (more or less, for details see <tvar|msgnw>{{ll|Help:Template#Usage}}). |
| | | | ||
|- | |- | ||
Line 1,130: | Line 1,094: | ||
| <code><nowiki>{{safesubst:xyz}}</nowiki></code> | | <code><nowiki>{{safesubst:xyz}}</nowiki></code> | ||
| | | | ||
− | | See | + | | See {{ll|Help:Template#Usage}}. |
| | | | ||
|} | |} | ||
Line 1,145: | Line 1,109: | ||
! width="10%" | Version | ! width="10%" | Version | ||
|- | |- | ||
− | | <tvar|code1><code><nowiki>{{#language:</nowiki | + | | <tvar|code1><code><nowiki>{{#language:</nowiki>''language code''<tvar|code2><nowiki>}}</nowiki></code><br /><code><nowiki>{{#language:ar}}</nowiki></code> <br /><code><nowiki>{{#language:</nowiki>''language code''<tvar|code3><nowiki>|</nowiki><br />''target language code''<tvar|code5><nowiki>}}</nowiki></code> <br /><code><nowiki>{{#language:ar|en}}</nowiki></code> |
− | | {{#language:language code}} <br />{{#language:ar}} <br />{{#language:language code| target language code<tvar|code1>}} <br | + | | {{#language:language code}} <br />{{#language:ar}} <br />{{#language:language code| target language code<tvar|code1>}} <br />Arabic |
− | | The full name of the language for the given [[<tvar|manual-langcode>Special:MyLanguage/Manual:Language#lang-code | + | | The full name of the language for the given [[<tvar|manual-langcode>Special:MyLanguage/Manual:Language#lang-code|language code]]: native name (language autonym) by default, name translated in target language if a target language code is specified. <tvar|ext-cldr>{{ll|Extension:CLDR}} must be installed for the translation to work. |
| {{MW version|version=1.7|compact=y|comment=and after|r=14490}}<br /> {{MW version|version=1.18|compact=y|comment=and after|r=91875}} (translation) | | {{MW version|version=1.7|compact=y|comment=and after|r=14490}}<br /> {{MW version|version=1.18|compact=y|comment=and after|r=91875}} (translation) | ||
|- | |- | ||
Line 1,160: | Line 1,124: | ||
| {{MW version|version=1.20|compact=y|comment=and after|gerrit change=4340}} | | {{MW version|version=1.20|compact=y|comment=and after|gerrit change=4340}} | ||
|- | |- | ||
− | | <code><nowiki>{{#tag:</nowiki> ''tagname'' <tvar|code1><br/><nowiki>|</nowiki | + | | <code><nowiki>{{#tag:</nowiki> ''tagname'' <tvar|code1><br/><nowiki>|</nowiki>''content'' <tvar|code2><br/><nowiki>|</nowiki>''attribute1=value1'' <tvar|code3><br /><nowiki>|</nowiki>''attribute2=value2''<br /><nowiki>}}</nowiki></code> |
| ''(Depends on parser tag)'' | | ''(Depends on parser tag)'' | ||
| | | | ||
− | Alias for XML-style MediaWiki parser tags or extension tags. It allows a [[<tvar|man>Special:MyLanguage/Manual:Tag extensions#How do I render wikitext in my extension? | + | Alias for XML-style MediaWiki parser tags or extension tags. It allows a [[<tvar|man>Special:MyLanguage/Manual:Tag extensions#How do I render wikitext in my extension?|pre-save transform of wiki code]] and <tvar|ext-pf>{{ll|Extension:ParserFunctions}} 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: |
− | <tvar|code1><code>< | + | <tvar|code1><code><tagname ''attribute1''="''value1''"<br />''attribute2''="''value2''"<tvar|code2>></code>''Your content goes here''<tvar|code3><code></tagname<tvar|code4>></code> |
Line 1,172: | Line 1,136: | ||
− | <tvar|code1><code><nowiki>{{#tag:</nowiki></code | + | <tvar|code1><code><nowiki>{{#tag:</nowiki></code>''tagname''<tvar|code2><code><nowiki>|</nowiki></code>''Your content goes here''<tvar|code3><code><nowiki>|</nowiki></code>''attribute1''=''value1''<tvar|code4><code><nowiki>|</nowiki></code>''attribute2''=''value2''<tvar|code5><code><nowiki>}}</nowiki></code> |
− | Example for the [[<tvar|ext-cite>Special:MyLanguage/Extension:Cite | + | Example for the [[<tvar|ext-cite>Special:MyLanguage/Extension:Cite|Cite extension]]'s <code><ref></code> tags: |
Line 1,181: | Line 1,145: | ||
− | {{warning|1= You must write <tvar|code1><code><nowiki>{{#tag:</nowiki></code | + | {{warning|1= You must write <tvar|code1><code><nowiki>{{#tag:</nowiki></code>''tagname''<tvar|code2><code><nowiki>||</nowiki></code>''attribute1''=''value1''<tvar|code3><code><nowiki>|</nowiki></code>''attribute2''=''value2''<tvar|code4><code><nowiki>}}</nowiki></code> to pass an empty content. No leading or trailing space of the text content are permitted between the pipe characters <tvar|code5><code>{{!}}{{!}}</code> before ''attribute1''.}} |
| {{MW version|version=1.12|compact=y|comment=and after|r=29482}} | | {{MW version|version=1.12|compact=y|comment=and after|r=29482}} | ||
|} | |} |
Latest revision as of 14:56, 15 July 2020
Magic words are strings of text that MediaWiki associates with a return value or function, such as time, site details, or page names. This page explains only the standard magic words; for a technical reference, see Manual:Magic words .
There are three general types of magic words:
- Behavior switches: these are usually written as uppercase words surrounded by double underscores, e.g.
__FOO__
. - Variables: these are uppercase words surrounded by double braces, e.g.
{{FOO}}
. As such, they look a lot like templates. - Parser functions: these take parameters and are either of the form
{{foo:...}}
{{#foo:...}}
, e.g.{{#invoke:}}
. See also Help:Extension:ParserFunctions and Extension:Scribunto .
Variables and parser functions can use subst:, just like templates. 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 (if supported by the skin) and can often be used to specify desired omissions and inclusions in the content. Notably some of these are not supported by the Minerva skin.
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 (before the first header, overriding __NOTOC__ ).
|
|||
__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 usually not what the user intends. Use of this in a template will extend the effect to that template, the pages it's included on, and any other templates included on the same page. For a workaround, see here. | |||
__NEWSECTIONLINK__
|
Adding a section to the end]]). |
| ||
__NONEWSECTIONLINK__
|
Removes the link beside the "Edit" tab on pages in talk namespaces. |
| ||
Categories | ||||
__NOGALLERY__
|
Used on a category page, replaces thumbnails in the category view with normal links. |
| ||
__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 [[<tvar|help-preferences>Special:MyLanguage/Help:Preferences|user preferences]] to show them). |
| ||
__EXPECTUNUSEDCATEGORY__
|
Used on a category page, removes the category from Special:UnusedCategories . |
| ||
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. Was used to point where database message starts after comment that should not be transcluded. Removed in r1695 and completely removed in r24784 |
| ||
__END__
|
Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. Removed in 19213. |
| ||
__INDEX__
|
manual-wg-bot-policy>$wgArticleRobotPolicies but not robots.txt). It obeys <tvar|manual-wg-exempt-from-bot>$wgExemptFromUserRobotsControl variable. |
| ||
__NOINDEX__
|
manual-wg-exempt-from-bot>$wgExemptFromUserRobotsControl variable. |
| ||
__STATICREDIRECT__
|
fixDoubleRedirects>Update any redirects that point to the original title" (which requires [[<tvar|var>Special:MyLanguage/Manual:$wgFixDoubleRedirects|$wgFixDoubleRedirects]]). |
| ||
From Extensions | ||||
Extension | Word | Description | Versions | |
GlobalUserPage | __NOGLOBAL__
|
Disables the global user page. If present on the central user page, will prevent it from being displayed on remote wikis, and it also determines whether a link to a user page on remote wiki should be red or blue. |
| |
Disambiguator | __DISAMBIG__
|
Identifies a disambiguation page. |
|
Variables
Variables return information about the current page, wiki, or date. Their syntax is similar to [[<tvar|help-templates>Special:MyLanguage/Help:Templates|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 <tvar|code>{{Template:PAGENAME<tvar|code-end>}}
). In some cases, adding parameters will force the parser to invoke a template; for example, <tvar|tpl-currentdayname-code>{{CURRENTDAYNAME|x}}
transcludes <tvar|tpl-currentdayname-result>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 use of those variables cause pages to be cached for a more limited number of seconds. This is configured in <tvar|MagicWordFactory>MagicWordFactory.
The date and time magic words are formatted in the wiki content language. Since 1.19, they depend on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang|page content language]].
Variable | Output | Description | Versions | |
---|---|---|---|---|
Year | ||||
{{CURRENTYEAR}}
|
2025 | Year | ||
Month | ||||
{{CURRENTMONTH}}
|
02 | Month (zero-padded number) | ||
{{CURRENTMONTH1}}
|
2 | Month (unpadded number) | ||
{{CURRENTMONTHNAME}}
|
February | Month (name) | ||
{{CURRENTMONTHNAMEGEN}}
|
February | Month (genitive form) | ||
{{CURRENTMONTHABBREV}}
|
Feb | Month (abbreviation) |
| |
Day | ||||
{{CURRENTDAY}}
|
11 | Day of the month (unpadded number) | ||
{{CURRENTDAY2}}
|
11 | Day of the month (zero-padded number) |
| |
{{CURRENTDOW}}
|
2 | Day of the week (unpadded number), 0 (for Sunday) through 6 (for Saturday) | ||
{{CURRENTDAYNAME}}
|
Tuesday | Day of the week (name) | ||
Time | ||||
{{CURRENTTIME}}
|
14:17 | Time (24-hour HH:mm format) | ||
{{CURRENTHOUR}}
|
14 | Hour (24-hour zero-padded number) | ||
Other | ||||
{{CURRENTWEEK}}
|
7 | Week (number) | ||
{{CURRENTTIMESTAMP}}
|
20250211141733 | YYYYMMDDHHmmss timestamp |
|
The following variables do the same as the preceding ones but using the site's server config or <tvar|manual-wg-localtimezone>$wgLocaltimezone.
{{LOCALYEAR}}
{{LOCALMONTH}}
{{LOCALMONTH1}}
{{LOCALMONTHNAME}}
{{LOCALMONTHNAMEGEN}}
{{LOCALMONTHABBREV}}
{{LOCALDAY}}
{{LOCALDAY2}}
{{LOCALDOW}}
{{LOCALDAYNAME}}
{{LOCALTIME}}
{{LOCALHOUR}}
{{LOCALWEEK}}
{{LOCALTIMESTAMP}}
For more thorough time formatting, or to output the current year and week with better compliance with ISO-8601, you may want to install <tvar|ext-parserfunctions>Extension:ParserFunctions to use the [[<tvar|ext-parserfunct-t>Special:MyLanguage/Help:Extension:ParserFunctions#.23time|#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}}
|
RobotX | manual-wg-sitename>$wgSitename). | |||
{{SERVER}}
|
http://OCRobotx.org | Domain URL (<tvar|manual-wg-server>$wgServer). | |||
{{SERVERNAME}}
|
OCRobotx.org | manual-wg-servername>$wgServerName as of version 1.17). | |||
{{DIRMARK}}
|
|
Outputs a Unicode directional mark that matches the wiki's default language's direction (‎ on left-to-right wikis, ‏ on right-to-left wikis), useful in text with multi-directional text. Since 1.19, it depends on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang|page content language]].
|
| ||
{{SCRIPTPATH}}
|
/mediawiki | manual-wg-scriptpath>$wgScriptPath). | |||
{{STYLEPATH}}
|
/mediawiki/skins | manual-wg-stylepath>$wgStylePath). |
| ||
{{CURRENTVERSION}}
|
1.35.0 | The wiki's MediaWiki version. |
| ||
{{CONTENTLANGUAGE}}
|
en en |
manual-wg-langcode>$wgLanguageCode). |
| ||
Page | |||||
{{PAGEID}}
|
1821 | Returns the page identifier. |
| ||
{{PAGELANGUAGE}}
|
en
English |
Returns the language of the current page. The language code that this variable returns can be converted to a language name using {{#language:...}} .
|
| ||
{{PROTECTIONLEVEL: action}}
|
Outputs the protection level (e.g. "autoconfirmed", "sysop") for a given action (e.g. "edit", "move") on the current page. Returns an empty string if not protected. |
| |||
{{PROTECTIONEXPIRY: action}}
|
Outputs the protection expiry (e.g. "20160418155030", "infinity") for a given action (e.g. "edit", "move") on the current page. Returns "infinity" if not protected. |
| |||
{{CASCADINGSOURCES}}
|
[ Expensive] Returns the sources of any cascading protection acting on the current page. Pages will not return their own title unless they transclude themselves. |
| |||
Latest revision to current page | |||||
{{REVISIONID}}
|
13371 | Unique revision ID. It is empty in preview, thus one can show an error message only in preview. May be disabled in miser mode. |
| ||
{{REVISIONDAY}}
|
15 | Day edit was made (unpadded number). |
| ||
{{REVISIONDAY2}}
|
15 | Day edit was made (zero-padded number). |
| ||
{{REVISIONMONTH}}
|
07 | Month edit was made (zero-padded number as of 1.17+, unpadded number in prior versions). |
| ||
{{REVISIONMONTH1}}
|
7 | Month edit was made (unpadded number). |
| ||
{{REVISIONYEAR}}
|
2020 | Year edit was made. |
| ||
{{REVISIONTIMESTAMP}}
|
20200715145625 | Timestamp as of time of edit. |
| ||
{{REVISIONUSER}}
|
Joelmartin | The username of the user who made the most recent edit to the page, or the current user when previewing an edit. |
| ||
{{REVISIONSIZE}}
|
74198 | The size (bytes of wikitext) of the current revision of this page |
| ||
Affects page content | |||||
{{DISPLAYTITLE: title}} {{DISPLAYTITLE: title|noerror}} {{DISPLAYTITLE: title|noreplace}}
|
manual-wg-restrict-disp-title>$wgRestrictDisplayTitle). It can be disabled or enabled by <tvar|manual-wg-allow-disp-title>$wgAllowDisplayTitle; disabled by default before 1.10+, enabled by default thereafter.
It can take a second argument of noerror or noreplace to suppress error messages when multiple displaytitles are used on one page or to make this |
( for noerror and noreplace) | |||
code1>}} {{DEFAULTSORTKEY:sortkey<tvar|code2>}} {{DEFAULTCATEGORYSORT:sortkey<tvar|code3>}} {{DEFAULTSORT:sortkey<tvar|code4>|noerror}} {{DEFAULTSORT:sortkey|noreplace}}
|
Used for categorizing pages, sets a default [[<tvar|help-categories>Special:MyLanguage/Help:Categories|category sort key]]. For example if you put <tvar|sort>{{DEFAULTSORT:Smith , John<tvar|sort-end>}} 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 defaultsortkeys are used on one page or to make this <tvar|sort2>defaultsort do nothing if a <tvar|sort3>defaultsort was already specified earlier in the page.
|
( for noerror and noreplace) |
Statistics
Numbers returned by these variables normally contain separators (commas, dots or spaces, depending on the local language) but can return raw numbers with the ":R" flag (for example, <tvar|nop-code>{{NUMBEROFPAGES}}
→ <tvar|nop-result>5,112 and <tvar|nop-r-code>{{NUMBEROFPAGES:R}}
→ <tvar|nop-r-result>5112).
Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example <tvar|pic>{{PAGESINCATEGORY:Help}}
and <tvar|pic-r>{{PAGESINCATEGORY:Help|R}}
, or <tvar|pic-subcats>{{PAGESINCATEGORY:Help|subcats}}
and <tvar|pic-subcats-r>{{PAGESINCATEGORY:Help|subcats|R}}
). Also applicable to <tvar|pagesize>{{PAGESIZE:page name<tvar|pagesize-end>}}
hereinbefore.
The number magic words are formatted in the wiki content language. Since 1.19, it depends on the [[<tvar|manual-pagelang>Special:MyLanguage/Manual:Language#page-content-lang|page content language]].
Variable | Output | Description | Versions | |
---|---|---|---|---|
{{NUMBEROFPAGES}}
|
5,112 | Number of wiki pages. |
| |
{{NUMBEROFARTICLES}}
|
33 | Number of pages in content namespaces that qualify as articles. See Manual:$wgArticleCountMethod for details. | ||
{{NUMBEROFFILES}}
|
96 | Number of uploaded files. |
| |
{{NUMBEROFEDITS}}
|
14,112 | Number of wiki edits. |
| |
{{NUMBEROFVIEWS}}
|
Number of page views. Usually useless on a wiki using [[<tvar|manual-cache>Special:MyLanguage/Manual:Cache|caching]]. Removed in <tvar|gerrit>Gerrit change 150699. |
| ||
{{NUMBEROFUSERS}}
|
29 | Number of registered users. |
| |
{{NUMBEROFADMINS}}
|
4 | manual-userrights>mediawiki|Special:MyLanguage/Manual:User rights|group}}. |
| |
{{NUMBEROFACTIVEUSERS}}
|
1 | Number of active users, based on the criteria used in Special:Statistics. |
| |
{{PAGESINCATEGORY:categoryname}} {{PAGESINCAT:categoryname}}
|
1 1 |
[ Expensive] Number of pages (including subcategories and files) in the given [[<tvar|help-categories>Special:MyLanguage/Help:Categories|category]]. (Category:Help used for demonstration) |
| |
code1>|all}} {{PAGESINCATEGORY:categoryname<tvar|code2>|pages}} {{PAGESINCATEGORY:categoryname<tvar|code3>|subcats}} {{PAGESINCATEGORY:categoryname|files}}
|
1 1 0 0 |
[ Expensive]
Respectively, the number of
in the given [[<tvar|help-categories>Special:MyLanguage/Help:Categories|category]]. (Category:Help used for demonstration) |
| |
code1>}} {{NUMINGROUP:groupname}}
|
18 18 ({{NUMBERINGROUP:bureaucrat}} used here) |
manual-userrights>mediawiki|Special:MyLanguage/Manual:User rights|group}}. |
| |
code1>}} {{PAGESINNAMESPACE:index}}
|
Not enabled | [ Expensive] Number of pages in the given [[<tvar|help-ns>Special:MyLanguage/Help:Namespaces|namespace]] (replace index with the relevant [[<tvar|manual-ns>Special:MyLanguage/Manual:Namespace|namespace index]]). For instance, <tvar|pins14>{{PAGESINNAMESPACE:14}} will output the number of category pages. <tvar|pins0>{{PAGESINNS:0}} differs from <tvar|noa>{{NUMBEROFARTICLES}} in that the former includes redirects and disambiguation pages. Disabled by default, enable with <tvar|manual-wg-allow-slow-parser-funct>$wgAllowSlowParserFunctions.
|
|
Page names
Variable | For current page | Description | Versions | |
---|---|---|---|---|
{{FULLPAGENAME}}
|
Help:Magic words | Namespace and full page title (including all subpage levels). |
| |
{{PAGENAME}}
|
Magic words | Full page title (including all subpage levels) without the namespace. | ||
{{BASEPAGENAME}}
|
Magic words |
Page title of the page in the immediately superior [[<tvar|help-subpages>Special:MyLanguage/Help:Subpages|subpage]] level without the namespace ("Title/foo" on "Help:Title/foo/bar").
|
| |
{{SUBPAGENAME}}
|
Magic words | The [[<tvar|help-subpages>Special:MyLanguage/Help:Subpages|subpage]] title ("bar" on "Help:Title/foo/bar"). If no subpage exists the value of <tvar|code>{{PAGENAME}} is returned.
|
| |
{{SUBJECTPAGENAME}} {{ARTICLEPAGENAME}}
|
Help:Magic words Help:Magic words |
Full page name of the associated subject (e.g. article or file). Useful on talk pages. |
| |
{{TALKPAGENAME}}
|
Help talk:Magic words | Full page name of the associated talk page. |
| |
{{ROOTPAGENAME}}
|
Magic words | foo>Title on page <tvar|baz>Help:Title/Foo/Bar
|
|
None of these are affected by changes to the display title using {{DISPLAYTITLE:xxxx}}
; the values returned are the original page title.
The <tvar|basepagename>{{BASEPAGENAME}}
and <tvar|subpagename>{{SUBPAGENAME}}
magic words only work in namespaces that have subpages enabled. See <tvar|manual-wg-ns-with-subpages>$wgNamespacesWithSubpages for information on enabling subpages.
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
![]() | If the page title contains any parts that are ". " or ".. ", the magic word fails returning nothing.
|
![]() | pic>{{PAGESINCATEGORY:{{PAGENAME}}}} . See bugs T16779, T18474, T37628, T37746. One simple way to fix this is wrapping the pagename in <tvar |
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}}
{{ROOTPAGENAMEE}}
Note that <tvar|pagename>{{PAGENAME:...}}
, <tvar|pagenamee>{{PAGENAMEE:...}}
and <tvar|uec>{{urlencode:...}}
have distinct implementations. See [[<tvar|manual-pagename-encoding>Special:MyLanguage/Manual:PAGENAMEE encoding|Manual:PAGENAMEE encoding]] for details.
Namespaces
Variable | Output | Description | Versions | |
---|---|---|---|---|
{{NAMESPACE}}
|
Help | Name of the page's namespace | ||
{{NAMESPACENUMBER}}
|
12 | [[<tvar|manual-ns-id>Special:MyLanguage/Manual:Namespace#Built-in_namespaces|ID]] of the page's namespace |
| |
{{SUBJECTSPACE}} {{ARTICLESPACE}}
|
Help Help |
Name of the associated content namespace |
| |
{{TALKSPACE}}
|
Help talk | Name of the associated talk namespace |
|
The following are equivalents encoded for use in MediaWiki URLs (spaces replaced with underscores and some characters percent-encoded):
{{NAMESPACEE}}
{{SUBJECTSPACEE}}
{{ARTICLESPACEE}}
{{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:
{{NAMESPACENUMBER:MediaWiki}}
→ 0{{NAMESPACE:MediaWiki}}
→ (Pages in main space will return empty){{NAMESPACE:Template:Main Page}}
→ Template{{SUBJECTSPACE:Template:Main Page}}
→ Template{{ARTICLESPACE:Template:Main Page}}
→ Template{{TALKSPACE:Template:Main Page}}
→ Template talk
Parameter must not be a namespace name:
{{SUBJECTSPACE:Help talk}}
→ (Empty)
Other
Variable | Output | Description | Versions | |
---|---|---|---|---|
{{!}}
|
| | Used to include a pipe character as part of a template argument or table cell contents. Before this was added as a magic word, many wikis implemented this by creating Template:! with | as the content.
|
|
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 <tvar|ext-pf>Extension:ParserFunctions . For those see <tvar|help-ext-pf>Help:Extension:ParserFunctions .
Technical metadata of another page
Parser function | Output (for page MediaWiki) |
Description | Versions | |
---|---|---|---|---|
{{PAGEID: page name }}
|
0 | [ Expensive] Returns the page identifier of the specified page*. |
| |
{{PAGESIZE: page name}} {{PAGESIZE: page name |R}}
|
0 0 |
r>|R " to get raw (unformatted) numbers.
|
| |
{{PROTECTIONLEVEL: action | page name}}
|
[ Expensive] Outputs the protection level (e.g. "autoconfirmed", "sysop") for a given action (e.g. "edit", "move") on the specified page. Returns an empty string if not protected. |
| ||
{{PROTECTIONEXPIRY:
|
[ Expensive] Outputs the protection expiry (e.g. "20160418155030", "infinity") for a given action (e.g. "edit", "move") on the specified page. Returns "infinity" if not protected. |
| ||
{{CASCADINGSOURCES: page name}}
|
[ Expensive] Returns the sources of any cascading protection acting on the specified page. Pages will not return their own title unless they transclude themselves. |
| ||
{{REVISIONID: page name }}
|
[ Expensive] Unique revision ID of the last revision on the specified page*. |
| ||
{{REVISIONDAY: page name }}
|
[ Expensive] Day of edit from the last revision of the specified page* (unpadded number). |
| ||
{{REVISIONDAY2: page name }}
|
[ Expensive] Day of edit from the last revision of the specified page* (zero-padded number). |
| ||
{{REVISIONMONTH: page name }}
|
[ Expensive] Month of edit from the last revision of the specified page* (zero-padded number as of 1.17+, unpadded number in prior versions). |
| ||
{{REVISIONMONTH1: page name }}
|
[ Expensive] Month of edit from the last revision of the specified page* (unpadded number). |
| ||
{{REVISIONYEAR: page name }}
|
[ Expensive] Year of edit from the last revision of the specified page*. |
| ||
{{REVISIONTIMESTAMP: page name }}
|
[ Expensive] Timestamp as of time of edit on the specified page*. |
| ||
{{REVISIONUSER: page name }}
|
[ Expensive] The username from the last revision on the specified page*. |
| ||
|
URL data
Parser function | Input → Output | Description | Versions | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
{{localurl: page name}} {{localurl: page name
|
{{localurl:MediaWiki}} → /mediawiki/index.php/MediaWiki {{localurl:MediaWiki|printable=yes}} → /mediawiki/index.php?title=MediaWiki&printable=yes |
The relative path to the title. | |||||||||||||||
{{fullurl: page name}} {{fullurl: page name {{fullurl: interwiki:remote page name
|
{{fullurl:Category:Top level}} → http://OCRobotx.org/mediawiki/index.php/Category:Top_level
|
A protocol-relative path to the title, which depends on the [[<tvar|manual-wg-server>Special:MyLanguage/Manual:$wgServer|$wgServer configuration setting]] for the local wiki (and so may or may not start with <tvar|prefix>http(s):// ). This will also resolve [[<tvar|manual-interwiki>Special:MyLanguage/Manual:Interwiki|interwiki]] prefixes. Note: Unbracketed (plain) protocol-relative links are not automagically linked.
|
| ||||||||||||||
{{canonicalurl: page name}} {{canonicalurl: page name {{canonicalurl: interwiki:remote page name
|
{{canonicalurl:Category:Top level}} → http://OCRobotx.org/mediawiki/index.php/Category:Top_level
|
The absolute path to the title, using the canonical URL. This will also resolve [[<tvar|manual-interwiki>Special:MyLanguage/Manual:Interwiki|interwiki]] prefixes. |
| ||||||||||||||
{{filepath: file name}} {{filepath: file name|nowiki}} {{filepath: file name| thumbnail_size}}
|
{{filepath:Wiki.png}} →
|
A protocol-relative path to the full size or thumbnail (1.18+) of a media file. |
| ||||||||||||||
code1>}} or <tvar|code2> {{urlencode:string<tvar|code3>|QUERY}} <tvar|code4>{{urlencode:string<tvar|code5>|WIKI}} {{urlencode:string|PATH}}
|
{{urlencode:x:y/z á é}} or {{urlencode:x:y/z á é|QUERY}} → x%3Ay%2Fz+%C3%A1+%C3%A9 {{urlencode:x:y/z á é|WIKI}} → x:y/z_%C3%A1_%C3%A9 {{urlencode:x:y/z á é|PATH}} → x%3Ay%2Fz%20%C3%A1%20%C3%A9 Note that the default changed from <tvar|wiki> |
ext-stringfunctions>Extension:StringFunctions .
|
| ||||||||||||||
{{anchorencode: string}}
|
{{anchorencode:x y z á é}} → x_y_z_.C3.A1_.C3.A9 |
The input encoded for use in URL section anchors (after the “#” symbol in a URL). |
|
Namespaces
<tvar|ns>{{ns:}}
returns the current localized name for the [[<tvar|help-ns>Special:MyLanguage/Help:Namespace|namespace]] with that index, canonical name, or local alias. Thus <tvar|ns6>{{ns:6}}
, <tvar|ns-file>{{ns:File}}
, and <tvar|ns-img>{{ns:Image}}
(an old name for the File namespace) all return "File". On a wiki where the content language is French, <tvar|ns-file-de>{{ns:Fichier}}
is also valid, but <tvar|ns-file-incorrect>{{ns:Datei}}
(the localisation of "File" in German) is not.
<tvar|nse>{{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}} / {{ns:Media}}
|
Media | {{ns:-1}} / {{ns:Special}}
|
Special (no talk page) | |
{{ns:0}} / {{ns:}}
|
{{ns:1}} / {{ns:Talk}}
|
Talk | ||
{{ns:2}} / {{ns:User}}
|
User | {{ns:3}} / {{ns:User talk}}
|
User talk | |
{{ns:4}} / {{ns:Project}}
|
RobotX Varies between wikis |
{{ns:5}} / {{ns:Project talk}}
|
RobotX talk | |
{{ns:6}} / {{ns:File}} or {{ns:Image}}
|
File | {{ns:7}} / {{ns:File talk}} or {{ns:Image talk}}
|
File talk | |
{{ns:8}} / {{ns:MediaWiki}}
|
MediaWiki | {{ns:9}} / {{ns:MediaWiki talk}}
|
MediaWiki talk | |
{{ns:10}} / {{ns:Template}}
|
Template | {{ns:11}} / {{ns:Template talk}}
|
Template talk | |
{{ns:12}} / {{ns:Help}}
|
Help | {{ns:13}} / {{ns:Help talk}}
|
Help talk | |
{{ns:14}} / {{ns:Category}}
|
Category | {{ns:15}} / {{ns:Category talk}}
|
Category talk |
Don't confuse localised namespaces with [[<tvar|manual-custom-ns>Special:MyLanguage/Manual:Using custom namespaces|custom namespaces]].
Formatting
Usage | Input → Output | Description | Version | ||||||
---|---|---|---|---|---|---|---|---|---|
{{formatnum:unformatted number}}
|
Unsupported:
Examples of wrong input (unreliable output), with or without
|
Takes an unformatted number (Arabic, no group separators and The
If you really need to format (according the wiki's locale) a number in unknown input format, you could try and use
|
| ||||||
|
Note: In the example hereinbefore, "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.
|
| ||||||
{{lc:string}}
|
{{lc:DATA CENTER}} → data center
|
The lowercase input. |
| ||||||
{{lcfirst:string}}
|
{{lcfirst:DATA center}} → dATA center
|
The input with the very first character lowercase. |
| ||||||
{{uc:string}}
|
{{uc:text transform}} → TEXT TRANSFORM
|
The uppercase input. |
| ||||||
{{ucfirst:string}}
|
{{ucfirst:text tRAnSFORM}} → Text tRAnSFORM
|
The input with the very first character uppercase. |
| ||||||
{{padleft:xyz|stringlength}}
|
{{padleft:xyz|5}} → 00xyz
(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.
|
| ||||||
{{padright:xyz|stringlength}} {{padright:xyz|strlen|char}} {{padright:xyz|strlen|string}}
|
{{padright:xyz|5}} → xyz00
|
Identical to padleft but adds padding characters to the right side.
|
|
See also: <tvar|ext-stringfunctions>Extension:StringFunctions .
Localization
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 [[<tvar|date>#Date and time|#Date and time]], [[<tvar|formatting>#Formatting|#Formatting]], [[<tvar|misc>#Miscellaneous|#Miscellaneous]]. More magic words are added by the <tvar|ext-translate>Extension:Translate .
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{{plural:-1|is|are}} → is{{plural:-2|is|are}} → are{{plural:0.5|is|are}} → are{{plural:1.5|is|are}} → are{{plural:-0.5|is|are}} → are{{plural:-1.5|is|are}} → are(For Russian) {{PLURAL:5|1=Категория|Категории}} → Категории
|
Outputs the singular form (second parameter) if the absolute value of the first parameter is an expression equalling one; the plural form (third parameter) otherwise. Its functioning is [[<tvar|meta-help-magicwords>m:Special:MyLanguage/Help:Magic_words#Language-dependent_word_conversions|language-dependent]].
Some language codes (ab, av, ba, bxr, ce, crh_cyrl, cv, inh, koi, krc, kv, lbe, lez, mhr, mrj, myv, ru, tt_cyrl, tyv, udm, xal) used 3 plural forms (updated 01.2014):
|
||
{{grammar:N|noun}}
|
Outputs the correct inflected form of the given word described by the inflection code after the colon ([[<tvar|meta-help-magicwords>m:Special:MyLanguage/Help:Magic_words#Language-dependent_word_conversions|language-dependent]]). Grammar transformations are used for inflected languages like Polish. See also <tvar|manual-wg-grammarform>$wgGrammarForms. |
| ||
{{gender:username|text for every gender}}
|
(Depends on the named user's gender) |
A switch for the gender set in Special:Preferences. |
| |
{{int: message name}}
|
{{int:edit}} → Edit (Depends on user language; try: fr • ja) |
Internationalizes (translates) the given interface (MediaWiki namespace) message into the user language. For |
||
{{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. |
Transclusion modifiers
{{Page name|optional params}}
usually transcludes another page, by default from the Template:namespace.
These magic words modify that behavior.
Usage | Output | Description | Version | |
---|---|---|---|---|
{{:xyz}}
|
code1>{{:UTC}} (vs. <tvar|code2>{{UTC}}) to include the text of the main namespace article UTC rather than Template:UTC. | |||
{{int:xyz}}
|
mw>{{MediaWiki:xyz}}, except standard message translation is applied depending on subpages and content/user/uselang language. Another difference is: this doesn't appear under "<tvar|translatesused>Templates used on this page:". Rendered as <tvar|int>⧼xyz⧽ if <tvar|mw>MediaWiki:xyz doesn't exist. See also Help:System message . | |||
{{msg:xyz}} {{raw:xyz}}
|
code>{{template:xyz}}). Normally, magic words have priority when there is a conflict. | |||
{{raw:xyz}}
|
If $wgEnableScaryTranscluding is enabled, and this is an interwiki transclusion, include the raw wikitext instead of the html from the foreign wiki. |
| ||
{{msgnw:xyz}}
|
msgnw>Help:Template#Usage ). | |||
{{subst:xyz}}
|
In the wikitext, the tag is substituted by the content (single-level evaluation only), see Help:Template#Usage . | |||
{{safesubst:xyz}}
|
See Help:Template#Usage . |
Miscellaneous
Usage | Output | Description | Version | |||
---|---|---|---|---|---|---|
code1>{{#language:language code<tvar|code2>}} {{#language:ar}} {{#language:language code<tvar|code3>| {{#language:ar|en}}
|
language code العربية language code Arabic |
The full name of the language for the given [[<tvar|manual-langcode>Special:MyLanguage/Manual:Language#lang-code|language code]]: native name (language autonym) by default, name translated in target language if a target language code is specified. <tvar|ext-cldr>Extension:CLDR must be installed for the translation to work. |
| |||
{{#special: special page name}}
|
Special:Special page name Special:UserLogin |
The localized name for the given canonical Special: page. |
| |||
{{#speciale: special page name}}
|
Special:Special_page_name Special:UserLogin |
The localized and URL-encoded name for the given canonical Special: page. |
| |||
code1> |content <tvar|code2> |attribute1=value1 <tvar|code3> |attribute2=value2 }} |
(Depends on parser tag) |
Alias for XML-style MediaWiki parser tags or extension tags. It allows a [[<tvar|man>Special:MyLanguage/Manual:Tag extensions#How do I render wikitext in my extension?|pre-save transform of wiki code]] and <tvar|ext-pf>Extension:ParserFunctions within tags before the tag is processed. It also prevents parsing of tags in conditional paths that aren't executed (like in
|
|