Help:Magic Words: Difference between revisions
No edit summary |
|||
(15 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
Basically there are three types of magic words: | Basically there are three types of magic words: | ||
*'''[[Help:Magic Words# | *'''[[Help:Magic Words#Behaviour_Switches|Behavior Switches]]'''. These are uppercase words surrounded by double underscores (eg __FOO__) | ||
*'''[[Help:Magic Words#Variables|Variables]]'''. These are uppercase words surrounded by double braces (eg <nowiki>{{FOO}}</nowiki>). | *'''[[Help:Magic Words#Variables|Variables]]'''. These are uppercase words surrounded by double braces (eg <nowiki>{{FOO}}</nowiki>). | ||
*'''[[Help:Magic Words# | *'''[[Help:Magic Words#Parser_Functions|Parametric or Parser Functions]]'''. These take parameters and are either of the form <nowiki>{{foo:...}}</nowiki> or <nowiki>{{#foo:...}}</nowiki>. | ||
__TOC__ | __TOC__ | ||
Line 53: | Line 53: | ||
|- | |- | ||
| <nowiki>__HIDDENCAT__</nowiki> | | <nowiki>__HIDDENCAT__</nowiki> | ||
| 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 | | Used on a category page, hides the category from the lists of categories in its members and parent categories (there is an option in the user preferences to show them). | ||
|- | |- | ||
Line 88: | Line 88: | ||
|} | |} | ||
==Variables== | |||
Variables return information about the current page, wiki, or date. Their syntax is similar to [[Help:Templates|templates]]. If a template name conflicts with a variable, the variable will be used (so to transclude the template [[{{ns:10}}:PAGENAME]] you would need to write <code><tt><nowiki>{{</nowiki>{{ns:10}}:PAGENAME<nowiki>}}</nowiki></tt></code>). In some cases, adding parameters will force the parser to treat a variable as a template; for example, <code><tt><nowiki>{{CURRENTDAYNAME|x}}</nowiki></tt></code> transcludes [[{{ns:10}}:CURRENTDAYNAME]]. | |||
===Date & time=== | |||
The following variables return the current date and time according to the user's timezone , defaulting to the UTC timezone. | |||
{| class="wikitable" border="1" | |||
|- | |||
!Variable | |||
! Output | |||
!Description | |||
|- | |||
|colspan="4"| '''Year''' | |||
|- | |||
| <tt><nowiki>{{CURRENTYEAR}}</nowiki></tt> | |||
| {{CURRENTYEAR}} | |||
| Year | |||
|- | |||
|colspan="4"| '''Month''' | |||
|- | |||
| <tt><nowiki>{{CURRENTMONTH}}</nowiki></tt> | |||
| {{CURRENTMONTH}} | |||
| Month (zero-padded number) | |||
|- | |||
| <tt><nowiki>{{CURRENTMONTHNAME}}</nowiki></tt> | |||
| {{CURRENTMONTHNAME}} | |||
| Month (name) | |||
|- | |||
| <tt><nowiki>{{CURRENTMONTHNAMEGEN}}</nowiki></tt> | |||
| {{CURRENTMONTHNAMEGEN}} | |||
| Month | |||
|- | |||
| <tt><nowiki>{{CURRENTMONTHABBREV}}</nowiki></tt> | |||
| {{CURRENTMONTHABBREV}} | |||
| Month (abbreviation) | |||
|- | |||
|colspan="4"| '''Day''' | |||
|- | |||
| <tt><nowiki>{{CURRENTDAY}}</nowiki></tt> | |||
| {{CURRENTDAY}} | |||
| Day of the month (unpadded number) | |||
|- | |||
| <tt><nowiki>{{CURRENTDAY2}}</nowiki></tt> | |||
| {{CURRENTDAY2}} | |||
| Day of the month (zero-padded number) | |||
|- | |||
| <tt><nowiki>{{CURRENTDOW}}</nowiki></tt> | |||
| {{CURRENTDOW}} | |||
| Day of the week (unpadded number) | |||
|- | |||
| <tt><nowiki>{{CURRENTDAYNAME}}</nowiki></tt> | |||
| {{CURRENTDAYNAME}} | |||
| Day of the week (name) | |||
|- | |||
| colspan="4"| '''Time''' | |||
|- | |||
| <tt><nowiki>{{CURRENTTIME}}</nowiki></tt> | |||
| {{CURRENTTIME}} | |||
| Time (24-hour HH:mm format) | |||
|- | |||
| <tt><nowiki>{{CURRENTHOUR}}</nowiki></tt> | |||
| {{CURRENTHOUR}} | |||
| Hour (24-hour zero-padded number) | |||
|- | |||
| colspan="4"| '''Other''' | |||
|- | |||
| <tt><nowiki>{{CURRENTWEEK}}</nowiki></tt> | |||
| {{CURRENTWEEK}} | |||
| Week (number) | |||
|- | |||
| <tt><nowiki>{{CURRENTTIMESTAMP}}</nowiki></tt> | |||
| {{CURRENTTIMESTAMP}} | |||
| YYYYMMDDHHmmss timestamp | |||
|} | |||
The following variables do the same as the above, but using the site's local timezone instead of user preferences and UTC: | |||
* <tt><nowiki>{{LOCALYEAR}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALMONTH}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALMONTHNAME}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALMONTHNAMEGEN}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALMONTHABBREV}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALDAY}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALDAY2}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALDOW}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALDAYNAME}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALTIME}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALHOUR}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALWEEK}}</nowiki></tt> | |||
* <tt><nowiki>{{LOCALTIMESTAMP}}</nowiki></tt> | |||
===Technical metadata=== | |||
Revision variables return data about the '''latest edit to the current page''', even if viewing an older version of the page. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Variable | |||
! Output | |||
!Description | |||
|- | |||
|colspan="4"| '''Site''' | |||
|- | |||
| <tt><nowiki>{{SITENAME}}</nowiki></tt> | |||
| {{SITENAME}} | |||
| The wiki's site name | |||
|- | |||
| <tt><nowiki>{{SERVER}}</nowiki></tt> | |||
| {{SERVER}} | |||
| domain URL | |||
|- | |||
| <tt><nowiki>{{SERVERNAME}}</nowiki></tt> | |||
| {{SERVERNAME}} | |||
| domain name | |||
|- | |||
| <tt><nowiki>{{DIRMARK}}</nowiki></tt><br /><tt><nowiki>{{DIRECTIONMARK}}</nowiki></tt> | |||
| {{DIRMARK}}<br />{{DIRECTIONMARK}} | |||
| Outputs a 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. | |||
|- | |||
| <tt><nowiki>{{SCRIPTPATH}}</nowiki></tt> | |||
| {{SCRIPTPATH}} | |||
| relative script path | |||
|- | |||
| <tt><nowiki>{{CURRENTVERSION}}</nowiki></tt> | |||
| {{CURRENTVERSION}} | |||
| The wiki's MediaWiki version. | |||
|- | |||
| <tt><nowiki>{{CONTENTLANGUAGE}}</nowiki></tt> | |||
| {{CONTENTLANGUAGE}} | |||
| The wiki's default interface language | |||
|- | |||
| colspan="4"| '''Latest revision to current page''' | |||
|- | |||
| <tt><nowiki>{{REVISIONID}}</nowiki></tt> | |||
| {{REVISIONID}} | |||
| Unique ID | |||
|- | |||
| <tt><nowiki>{{REVISIONDAY}}</nowiki></tt> | |||
| {{REVISIONDAY}} | |||
| Day edit was made (unpadded number) | |||
|- | |||
| <tt><nowiki>{{REVISIONDAY2}}</nowiki></tt> | |||
| {{REVISIONDAY2}} | |||
| Day edit was made (zero-padded number) | |||
|- | |||
| <tt><nowiki>{{REVISIONMONTH}}</nowiki></tt> | |||
| {{REVISIONMONTH}} | |||
| Month edit was made (unpadded number) | |||
|- | |||
| <tt><nowiki>{{REVISIONYEAR}}</nowiki></tt> | |||
| {{REVISIONYEAR}} | |||
| Year edit was made | |||
|- | |||
| <tt><nowiki>{{REVISIONTIMESTAMP}}</nowiki></tt> | |||
| {{REVISIONTIMESTAMP}} | |||
| Timestamp as of time of edit | |||
|- | |||
| <tt><nowiki>{{PAGESIZE:</nowiki>''page name''<nowiki>}}</nowiki></tt> | |||
| {{PAGESIZE:Help:Magic_words}} | |||
| Returns the byte size of the specified page. | |||
|- | |||
| <tt><nowiki>{{PROTECTIONLEVEL:</nowiki>''action''<nowiki>}}</nowiki></tt> | |||
| protection level | |||
| Outputs the protection level (e.g. 'autoconfirm', 'sysop') for a given action (e.g. 'edit', 'move') on the current page or an empty string if not protected. | |||
|- | |||
| colspan="4"| '''Affects page content''' | |||
|- | |||
| <tt><nowiki>{{DISPLAYTITLE:</nowiki>''title''<nowiki>}}</nowiki></tt> | |||
| | |||
| Format the current page's title header. The value must be equivalent to the default title: only capitalization changes and replacing spaces with underscores. | |||
|- | |||
| <tt><nowiki>{{DEFAULTSORT:</nowiki>''sortkey''<nowiki>}}</nowiki></tt> | |||
| | |||
| Used on a categorized page, sets a default. | |||
|} | |||
===Statistics=== | |||
Numbers returned by these variables normally contain separators (commas or spaces, depending on the local language), but can return raw numbers with the ":R" flag (for example, <code><tt><nowiki>{{NUMBEROFPAGES}}</nowiki></tt></code> → {{NUMBEROFPAGES}} and <code><tt><nowiki>{{NUMBEROFPAGES:R}}</nowiki></tt></code> → {{NUMBEROFPAGES:R}}). Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example <code><tt><nowiki>{{PAGESINCATEGORY:Help}}</nowiki></tt></code> and <code><tt><nowiki>{{PAGESINCATEGORY:Help|R}}</nowiki></tt></code>). | |||
{| class="wikitable" border="1" | |||
|- | |||
!Variable | |||
!Output | |||
!Description | |||
|- | |||
|colspan="4"| '''Entire wiki''' | |||
|- | |||
| <tt><nowiki>{{NUMBEROFPAGES}}</nowiki></tt> | |||
| {{NUMBEROFPAGES}} | |||
| Number of wiki pages. | |||
|- | |||
| <tt><nowiki>{{NUMBEROFARTICLES}}</nowiki></tt> | |||
| {{NUMBEROFARTICLES}} | |||
| Number of pages in main namespace. | |||
|- | |||
| <tt><nowiki>{{NUMBEROFFILES}}</nowiki></tt> | |||
| {{NUMBEROFFILES}} | |||
| Number of uploaded files. | |||
|- | |||
| <tt><nowiki>{{NUMBEROFEDITS}}</nowiki></tt> | |||
| {{NUMBEROFEDITS}} | |||
| Number of page edits. | |||
|- | |||
| <tt><nowiki>{{NUMBEROFUSERS}}</nowiki></tt> | |||
| {{NUMBEROFUSERS}} | |||
| Number of registered users. | |||
|- | |||
| <tt><nowiki>{{NUMBEROFADMINS}}</nowiki></tt> | |||
| {{NUMBEROFADMINS}} | |||
| Number of users in the ''sysop''. | |||
|- | |||
| <tt><nowiki>{{PAGESINCATEGORY:</nowiki>''categoryname''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{PAGESINCAT:Help}}</nowiki></tt> | |||
| {{PAGESINCATEGORY:Help}}<br />{{PAGESINCAT:Help}} | |||
| Number of pages in the given category (replace "Help" with the relevant category name). | |||
|- | |||
| <tt><nowiki>{{PAGESINNS:</nowiki>''index''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{PAGESINNAMESPACE:</nowiki>''index''<nowiki>}}</nowiki></tt> | |||
| ''not enabled'' | |||
| Number of pages in the given namespace (replace 2 with the relevant namespace index). E.g. <tt><nowiki>{{PAGESINNAMESPACE:</nowiki>''14''<nowiki>}}</nowiki></tt> equals the number of categories.. | |||
|} | |||
====Page names==== | |||
{| class="wikitable" border="1" | |||
|- | |||
!Variable | |||
! Output | |||
!Description | |||
|- | |||
| <tt><nowiki>{{FULLPAGENAME}}</nowiki></tt> | |||
| {{FULLPAGENAME}} | |||
| Namespace and page title. | |||
|- | |||
| <tt><nowiki>{{PAGENAME}}</nowiki></tt> | |||
| {{PAGENAME}} | |||
| Page title. | |||
|- | |||
| <tt><nowiki>{{BASEPAGENAME}}</nowiki></tt> | |||
| {{BASEPAGENAME}} | |||
| Page title excluding the current subpage and namespace ("Title" on "Title/foo"). | |||
|- | |||
| <tt><nowiki>{{SUBPAGENAME}}</nowiki></tt> | |||
| {{SUBPAGENAME}} | |||
| The subpage title ("foo" on "Title/foo"). | |||
|- | |||
| <tt><nowiki>{{SUBJECTPAGENAME}}</nowiki></tt> | |||
| {{SUBJECTPAGENAME}} | |||
| The namespace and title of the associated content page. | |||
|- | |||
| <tt><nowiki>{{TALKPAGENAME}}</nowiki></tt> | |||
| {{TALKPAGENAME}} | |||
| The namespace and title of the associated talk page. | |||
|} | |||
The following are URL-encoded equivalents: | |||
* <tt><nowiki>{{FULLPAGENAMEE}}</nowiki></tt> | |||
* <tt><nowiki>{{PAGENAMEE}}</nowiki></tt> | |||
* <tt><nowiki>{{BASEPAGENAMEE}}</nowiki></tt> | |||
* <tt><nowiki>{{SUBPAGENAMEE}}</nowiki></tt> | |||
* <tt><nowiki>{{SUBJECTPAGENAMEE}}</nowiki></tt> | |||
* <tt><nowiki>{{TALKPAGENAMEE}}</nowiki></tt> | |||
====Namespaces==== | |||
{| class="wikitable" border="1" | |||
! Variable | |||
! Output | |||
!Description | |||
|- | |||
| <tt><nowiki>{{NAMESPACE}}</nowiki></tt> | |||
| {{NAMESPACE}} | |||
| Namespace (name) | |||
|- | |||
| <tt><nowiki>{{SUBJECTSPACE}}</nowiki></tt><br /><tt><nowiki>{{ARTICLESPACE}}</nowiki></tt> | |||
| {{SUBJECTSPACE}}<br />{{ARTICLESPACE}} | |||
| Name of the associated content namespace | |||
|- | |||
| <tt><nowiki>{{TALKSPACE}}</nowiki></tt> | |||
| {{TALKSPACE}} | |||
| Name of the associated talk namespace | |||
|} | |||
The following are URL-encoded equivalents: | |||
* <tt><nowiki>{{NAMESPACEE}}</nowiki></tt> | |||
* <tt><nowiki>{{SUBJECTSPACEE}}</nowiki></tt> | |||
* <tt><nowiki>{{TALKSPACEE}}</nowiki></tt> | |||
==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 usually prefixed with a hash to distingush them from possible templates) | |||
===URL data=== | |||
{| class="wikitable" border="1" | |||
|- | |||
!Variable | |||
! Output | |||
!Description | |||
|- | |||
| <tt><nowiki>{{localurl:</nowiki>''page name''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{localurl:</nowiki>''page name''<nowiki>|</nowiki>''query string''<nowiki>}}</nowiki></tt> | |||
| {{localurl:page name}}<br />{{localurl:page name|query string}} | |||
| The relative path to the title. | |||
| | |||
|- | |||
| <tt><nowiki>{{fullurl:</nowiki>''page name''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{fullurl:</nowiki>''page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{fullurl:</nowiki>''interwiki:remote page name''<nowiki>|</nowiki>''query_string''<nowiki>}}</nowiki></tt> | |||
| {{fullurl:page name}}<br />{{fullurl:page name|query_string}} | |||
| The absolute path to the title. This will also resolve prefixes. | |||
|- | |||
| <tt><nowiki>{{filepath:</nowiki>''file name''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{filepath:file name|nowiki}}</nowiki></tt> | |||
| {{filepath:Wiki.png}}<br />{{filepath:Wiki.png|nowiki}} | |||
| The absolute URL to a media file. | |||
|- | |||
| <tt><nowiki>{{urlencode:</nowiki>''string''<nowiki>}}</nowiki></tt> | |||
| <code>{{urlencode:x y z}}</code> | |||
| The input encoded for use in URLs. | |||
|- | |||
| <tt><nowiki>{{anchorencode:</nowiki>''string''<nowiki>}}</nowiki></tt> | |||
| <code>{{anchorencode:x y z}}</code> | |||
| The input encoded for use in URL section anchors (after the '#' symbol in a URL). | |||
|} | |||
===Namespaces=== | |||
<code><tt><nowiki>{{ns:}}</nowiki></tt></code> returns the localized name for the namespace with that index. | |||
{| class="wikitable" border="1" | |||
| | |||
!Usage | |||
!Output | |||
!Usage | |||
!Output | |||
|- | |||
| <tt><nowiki>{{ns:-2}}</nowiki></tt> or <tt><nowiki>{{ns:Media}}</nowiki></tt> | |||
| {{ns:-2}} | |||
| <tt><nowiki>{{ns:-1}}</nowiki></tt> or <tt><nowiki>{{ns:Special}}</nowiki></tt> | |||
| {{ns:-1}} | |||
|- | |||
| <tt><nowiki>{{ns:0}}</nowiki></tt> | |||
| {{ns:0}} | |||
| <tt><nowiki>{{ns:1}}</nowiki></tt> or <tt><nowiki>{{ns:Talk}}</nowiki></tt> | |||
| {{ns:1}} | |||
|- | |||
| <tt><nowiki>{{ns:2}}</nowiki></tt> or <tt><nowiki>{{ns:User}}</nowiki></tt> | |||
| {{ns:2}} | |||
| <tt><nowiki>{{ns:3}}</nowiki></tt> or <tt><nowiki>{{ns:User_talk}}</nowiki></tt> | |||
| {{ns:3}} | |||
|- | |||
| <tt><nowiki>{{ns:4}}</nowiki></tt> or <tt><nowiki>{{ns:Project}}</nowiki></tt> | |||
| {{ns:4}} | |||
| <tt><nowiki>{{ns:5}}</nowiki></tt> or <tt><nowiki>{{ns:Project_talk}}</nowiki></tt> | |||
| {{ns:5}} | |||
|- | |||
| <tt><nowiki>{{ns:6}}</nowiki></tt> or <tt><nowiki>{{ns:File}}</nowiki></tt> or <tt><nowiki>{{ns:Image}}</nowiki></tt> | |||
| {{ns:6}} | |||
| <tt><nowiki>{{ns:7}}</nowiki></tt> or <tt><nowiki>{{ns:File_talk}}</nowiki></tt> or <tt><nowiki>{{ns:Image_talk}}</nowiki></tt> | |||
| {{ns:7}} | |||
|- | |||
| <tt><nowiki>{{ns:8}}</nowiki></tt> or <tt><nowiki>{{ns:MediaWiki}}</nowiki></tt> | |||
| {{ns:8}} | |||
| <tt><nowiki>{{ns:9}}</nowiki></tt> or <tt><nowiki>{{ns:MediaWiki_talk}}</nowiki></tt> | |||
| {{ns:9}} | |||
|- | |||
| <tt><nowiki>{{ns:10}}</nowiki></tt> or <tt><nowiki>{{ns:Template}}</nowiki></tt> | |||
| {{ns:10}} | |||
| <tt><nowiki>{{ns:11}}</nowiki></tt> or <tt><nowiki>{{ns:Template_talk}}</nowiki></tt> | |||
| {{ns:11}} | |||
|- | |||
| <tt><nowiki>{{ns:12}}</nowiki></tt> or <tt><nowiki>{{ns:Help}}</nowiki></tt> | |||
| {{ns:12}} | |||
| <tt><nowiki>{{ns:13}}</nowiki></tt> or <tt><nowiki>{{ns:Help_talk}}</nowiki></tt> | |||
| {{ns:13}} | |||
|- | |||
| <tt><nowiki>{{ns:14}}</nowiki></tt> or <tt><nowiki>{{ns:Category}}</nowiki></tt> | |||
| {{ns:14}} | |||
| <tt><nowiki>{{ns:15}}</nowiki></tt> or <tt><nowiki>{{ns:Category_talk}}</nowiki></tt> | |||
| {{ns:15}} | |||
|} | |||
===Formatting=== | |||
{| class="wikitable" border="1" | |||
|- | |||
!Usage | |||
!Output | |||
!Description | |||
|- | |||
|- | |||
| <tt><nowiki>{{lc:</nowiki>''string''<nowiki>}}</nowiki></tt> | |||
| {{lc:TeXt tRaNsFoRm}} | |||
| The lowercase input. | |||
|- | |||
| <tt><nowiki>{{lcfirst:</nowiki>''string''<nowiki>}}</nowiki></tt> | |||
| {{lcfirst:TeXt tRaNsFoRm}} | |||
| The input with the first character lowercase. | |||
|- | |||
| <tt><nowiki>{{uc:</nowiki>''string''<nowiki>}}</nowiki></tt> | |||
| {{uc:TeXt tRaNsFoRm}} | |||
| The uppercase input. | |||
|- | |||
| <tt><nowiki>{{ucfirst:</nowiki>''string''<nowiki>}}</nowiki></tt> | |||
| {{ucfirst:TeXt tRaNsFoRm}} | |||
| The input with the first character uppercase. | |||
|- | |||
| <tt><nowiki>{{formatnum:</nowiki>''unformatted number''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{formatnum:</nowiki>''formatted number''<nowiki>|R}}</nowiki></tt> | |||
| {{formatnum:-987654321.654321}}<br />{{formatnum:-987,654,321.654321|R}} | |||
| The input with decimal and decimal group separators, and localized digit script, according to the wiki's default locale. the <tt><nowiki>|</nowiki>R</tt> parameter can be used to unformat a number, for use in mathmatical situations. | |||
|- | |||
| <tt><nowiki>{{padleft:xyz|</nowiki>''number''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{padleft:xyz|</nowiki>''number''<nowiki>|</nowiki>''separator''<nowiki>}}</nowiki></tt> | |||
| {{padleft:xyz|5}}<br />{{padleft:xyz|5|_}} | |||
| Inserts a string of padding characters (character chosen in third parameter; default '0') of a specified length (second paramater) 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; ie. <nowiki>{{padleft:44|3|0}}</nowiki> produces {{padleft:44|3}}. | |||
|- | |||
| <tt><nowiki>{{padright:xyz|</nowiki>''number''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{padright:xyz|</nowiki>''number''<nowiki>|</nowiki>''separator''<nowiki>}}</nowiki></tt> | |||
| {{padright:xyz|5}}<br />{{padright:xyz|5|_}} | |||
| Identical to padleft, but adds padding characters to the right side. | |||
|- | |||
| <tt><nowiki>{{plural:2|</nowiki>''is''<nowiki>|</nowiki>''are''<nowiki>}}</nowiki></tt> | |||
| {{plural:2|is|are}} | |||
| Outputs the correct given pluralization form (parameters except first) depending on the count (first parameter). Plural transformations are used for languages like Russian based on "count mod 10". | |||
|- | |||
| <tt><nowiki>{{grammar:N|</nowiki>''noun''<nowiki>}}</nowiki></tt> | |||
| {{grammar:N|noun}} | |||
| | |||
Outputs | |||
the correct inflected form of the given word | |||
described by the inflection code after the colon | |||
(language-dependent). | |||
Grammar transformations | |||
are used for inflected languages like Polish. | |||
|} | |||
===Miscellaneous=== | |||
{| class="wikitable" border="1" | |||
|- | |||
! Usage | |||
! Output | |||
! Description | |||
! Version | |||
|- | |||
| <tt><nowiki>{{int:</nowiki>''message name''<nowiki>}}</nowiki><br /><tt><nowiki>{{int:</nowiki>edit<nowiki>}}</nowiki> | |||
| {{int:edit}} <br />(''depends on user language, try: <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}|uselang=fr}}#Miscellaneous fr] •[{{fullurl:{{FULLPAGENAME}}|uselang=ja}}#Miscellaneous ja]</span>'') | |||
| Internationalizes (translates) the given '''int'''erface (namespace) message into the user language. | |||
| | |||
|- | |||
| <tt><nowiki>{{#language:</nowiki>''language code''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{#language:ar}}</nowiki></tt><br /><tt><nowiki>{{#language:th}}</nowiki></tt> | |||
| {{#language:language code}}<br />{{#language:ar}}<br />{{#language:th}} | |||
| The native name for the given language code. | |||
|- | |||
| <tt><nowiki>{{#special:</nowiki>''special page name''<nowiki>}}</nowiki><br /><br /><nowiki>{{#special:Special:UserLogin}}</nowiki></tt> | |||
| {{#special:special page name}}<br />{{#special:userlogin}} | |||
| The localized name for the given canonical Special: page. | |||
|- | |||
| <tt><nowiki>{{#tag:</nowiki>''tagname''<nowiki>}}</nowiki></tt><br /><tt><nowiki>{{#tag:</nowiki>''tagname''<br><nowiki>|</nowiki>''tag content''<br><nowiki>|</nowiki>''parameter=value''<br /><nowiki>|</nowiki>''parameter2=value''<br /><nowiki>}}</nowiki></tt> | |||
| ''(depends on parser tag)'' | |||
| Alias for XML-style parser or extension tags, but parsing wiki code. Attribute values can be passed as parameter values ('<code><nowiki><tagname attribute="value"></nowiki></code>' → '<code><tt><nowiki>{{#tag:tagname|attribute=value}}</nowiki></tt></code>'), and inner content as an unnamed parameter ('<code><nowiki><tagname>content</tagname></nowiki></code>' → '<code><tt><nowiki>{{#tag:tagname|content}}</nowiki></tt></code>'). | |||
|- | |||
| <tt><nowiki>{{GENDER:</nowiki>''username''<br /><nowiki>|</nowiki>''return text if user is male''<br /><nowiki>|</nowiki>''return text if user is female''<br /><nowiki>|</nowiki>''return text if user hasn't defined their gender''<nowiki>}}</nowiki></tt> | |||
| ''(depends on the named user's gender)'' | |||
| A switch for the gender set in [[Special:Preferences]] | |||
|} | |||
[[Category:Help Pages|{{PAGENAME}}]] |
Latest revision as of 20:32, 4 March 2009
Magic words are strings of codes which associates with a return value or function, such as time, site details, or page names. This page is about usage of standard magic words.
Basically there are three types of magic words:
- Behavior Switches. These are uppercase words surrounded by double underscores (eg __FOO__)
- Variables. These are uppercase words surrounded by double braces (eg {{FOO}}).
- Parametric or Parser Functions. These take parameters and are either of the form {{foo:...}} or {{#foo:...}}.
Behaviour Switches
A behaviour switch controls the layout or behaviour of the page and can often be used to specify desired omissions and inclusions in the content.
Word | Description | |
---|---|---|
Table of contents | ||
__NOTOC__ | Hides the table of contents (TOC). | |
__FORCETOC__ | Forces the table of content to appear at its normal position (above the first header). | |
__TOC__ | Places a table of contents at the word's current position (overriding __NOTOC__). If this is used multiple times, the table of contents will appear at the first word's position. | |
Editing | ||
__NOEDITSECTION__ | Hides the section edit links beside headings. | |
__NEWSECTIONLINK__ | Adds a link beside the "edit" tab for adding a new section on a non-talk page. | |
__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 user preferences to show them). | |
Language conversion | ||
__NOCONTENTCONVERT__ __NOCC__ |
On wikis with language variants, don't perform any content language conversion (character and phase) in article display; for example, only show Chinese (zh) instead of variants like zh_cn, zh_tw, zh_sg, or zh_hk. | |
__NOTITLECONVERT__ __NOTC__ |
On wikis with language variants, don't perform language conversion on the title (all other content is converted). | |
Other | ||
__START__ | No effect. | |
__END__ | Explicitly marks the end of the article, to prevent MediaWiki from removing trailing whitespace. | |
__INDEX__ | Tell search engines to index the page. | |
__NOINDEX__ | Tell search engines not to index the page (ie, do not list in search engines' results). | |
__STATICREDIRECT__ | On redirect pages, don't allow wiki to automatically update the link when someone moves a page and checks "Update any redirects that point to the original title". |
Variables
Variables return information about the current page, wiki, or date. Their syntax is similar to templates. If a template name conflicts with a variable, the variable will be used (so to transclude the template Template:PAGENAME you would need to write {{Template:PAGENAME}}
). In some cases, adding parameters will force the parser to treat a variable as a template; for example, {{CURRENTDAYNAME|x}}
transcludes Template:CURRENTDAYNAME.
Date & time
The following variables return the current date and time according to the user's timezone , defaulting to the UTC timezone.
Variable | Output | Description | |
---|---|---|---|
Year | |||
{{CURRENTYEAR}} | 2024 | Year | |
Month | |||
{{CURRENTMONTH}} | 11 | Month (zero-padded number) | |
{{CURRENTMONTHNAME}} | November | Month (name) | |
{{CURRENTMONTHNAMEGEN}} | November | Month | |
{{CURRENTMONTHABBREV}} | Nov | Month (abbreviation) | |
Day | |||
{{CURRENTDAY}} | 22 | Day of the month (unpadded number) | |
{{CURRENTDAY2}} | 22 | Day of the month (zero-padded number) | |
{{CURRENTDOW}} | 5 | Day of the week (unpadded number) | |
{{CURRENTDAYNAME}} | Friday | Day of the week (name) | |
Time | |||
{{CURRENTTIME}} | 01:15 | Time (24-hour HH:mm format) | |
{{CURRENTHOUR}} | 01 | Hour (24-hour zero-padded number) | |
Other | |||
{{CURRENTWEEK}} | 47 | Week (number) | |
{{CURRENTTIMESTAMP}} | 20241122011504 | YYYYMMDDHHmmss timestamp |
The following variables do the same as the above, but using the site's local timezone instead of user preferences and UTC:
- {{LOCALYEAR}}
- {{LOCALMONTH}}
- {{LOCALMONTHNAME}}
- {{LOCALMONTHNAMEGEN}}
- {{LOCALMONTHABBREV}}
- {{LOCALDAY}}
- {{LOCALDAY2}}
- {{LOCALDOW}}
- {{LOCALDAYNAME}}
- {{LOCALTIME}}
- {{LOCALHOUR}}
- {{LOCALWEEK}}
- {{LOCALTIMESTAMP}}
Technical metadata
Revision variables return data about the latest edit to the current page, even if viewing an older version of the page.
Variable | Output | Description | |
---|---|---|---|
Site | |||
{{SITENAME}} | Iskomunidad | The wiki's site name | |
{{SERVER}} | https://iskomunidad.upd.edu.ph | domain URL | |
{{SERVERNAME}} | iskomunidad.upd.edu.ph | domain name | |
{{DIRMARK}} {{DIRECTIONMARK}} |
|
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.
| |
{{SCRIPTPATH}} | relative script path | ||
{{CURRENTVERSION}} | 1.42.3 | The wiki's MediaWiki version. | |
{{CONTENTLANGUAGE}} | en | The wiki's default interface language | |
Latest revision to current page | |||
{{REVISIONID}} | 2759 | Unique ID | |
{{REVISIONDAY}} | 4 | Day edit was made (unpadded number) | |
{{REVISIONDAY2}} | 04 | Day edit was made (zero-padded number) | |
{{REVISIONMONTH}} | 03 | Month edit was made (unpadded number) | |
{{REVISIONYEAR}} | 2009 | Year edit was made | |
{{REVISIONTIMESTAMP}} | 20090304203209 | Timestamp as of time of edit | |
{{PAGESIZE:page name}} | 0 | Returns the byte size of the specified page. | |
{{PROTECTIONLEVEL:action}} | protection level | Outputs the protection level (e.g. 'autoconfirm', 'sysop') for a given action (e.g. 'edit', 'move') on the current page or an empty string if not protected. | |
Affects page content | |||
{{DISPLAYTITLE:title}} | Format the current page's title header. The value must be equivalent to the default title: only capitalization changes and replacing spaces with underscores. | ||
{{DEFAULTSORT:sortkey}} | Used on a categorized page, sets a default. |
Statistics
Numbers returned by these variables normally contain separators (commas or spaces, depending on the local language), but can return raw numbers with the ":R" flag (for example, {{NUMBEROFPAGES}}
→ 22,801 and {{NUMBEROFPAGES:R}}
→ 22801). Use "|R" for magic words that require a parameter like PAGESINCATEGORY (for example {{PAGESINCATEGORY:Help}}
and {{PAGESINCATEGORY:Help|R}}
).
Variable | Output | Description | |
---|---|---|---|
Entire wiki | |||
{{NUMBEROFPAGES}} | 22,801 | Number of wiki pages. | |
{{NUMBEROFARTICLES}} | 3,711 | Number of pages in main namespace. | |
{{NUMBEROFFILES}} | 14,954 | Number of uploaded files. | |
{{NUMBEROFEDITS}} | 70,442 | Number of page edits. | |
{{NUMBEROFUSERS}} | 5,923 | Number of registered users. | |
{{NUMBEROFADMINS}} | 12 | Number of users in the sysop.
| |
{{PAGESINCATEGORY:categoryname}} {{PAGESINCAT:Help}} |
1 1 |
Number of pages in the given category (replace "Help" with the relevant category name). | |
{{PAGESINNS:index}} {{PAGESINNAMESPACE:index}} |
not enabled | Number of pages in the given namespace (replace 2 with the relevant namespace index). E.g. {{PAGESINNAMESPACE:14}} equals the number of categories.. |
Page names
Variable | Output | Description |
---|---|---|
{{FULLPAGENAME}} | Help:Magic Words | Namespace and page title. |
{{PAGENAME}} | Magic Words | Page title. |
{{BASEPAGENAME}} | Magic Words | Page title excluding the current subpage and namespace ("Title" on "Title/foo"). |
{{SUBPAGENAME}} | Magic Words | The subpage title ("foo" on "Title/foo"). |
{{SUBJECTPAGENAME}} | Help:Magic Words | The namespace and title of the associated content page. |
{{TALKPAGENAME}} | Help talk:Magic Words | The namespace and title of the associated talk page. |
The following are URL-encoded equivalents:
- {{FULLPAGENAMEE}}
- {{PAGENAMEE}}
- {{BASEPAGENAMEE}}
- {{SUBPAGENAMEE}}
- {{SUBJECTPAGENAMEE}}
- {{TALKPAGENAMEE}}
Namespaces
Variable | Output | Description |
---|---|---|
{{NAMESPACE}} | Help | Namespace (name) |
{{SUBJECTSPACE}} {{ARTICLESPACE}} |
Help Help |
Name of the associated content namespace |
{{TALKSPACE}} | Help talk | Name of the associated talk namespace |
The following are URL-encoded equivalents:
- {{NAMESPACEE}}
- {{SUBJECTSPACEE}}
- {{TALKSPACEE}}
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 usually prefixed with a hash to distingush them from possible templates)
URL data
Variable | Output | Description | |
---|---|---|---|
{{localurl:page name}} {{localurl:page name|query string}} |
/index.php?title=Page_name /index.php?title=Page_name&query string |
The relative path to the title. | |
{{fullurl:page name}} {{fullurl:page name|query_string}} {{fullurl:interwiki:remote page name|query_string}} |
https://iskomunidad.upd.edu.ph/index.php?title=Page_name https://iskomunidad.upd.edu.ph/index.php?title=Page_name&query_string |
The absolute path to the title. This will also resolve prefixes. | |
{{filepath:file name}} {{filepath:file name|nowiki}} |
The absolute URL to a media file. | ||
{{urlencode:string}} | x+y+z
|
The input encoded for use in URLs. | |
{{anchorencode:string}} | x_y_z
|
The input encoded for use in URL section anchors (after the '#' symbol in a URL). |
Namespaces
{{ns:}}
returns the localized name for the namespace with that index.
Usage | Output | Usage | Output | |
---|---|---|---|---|
{{ns:-2}} or {{ns:Media}} | Media | {{ns:-1}} or {{ns:Special}} | Special | |
{{ns:0}} | {{ns:1}} or {{ns:Talk}} | Talk | ||
{{ns:2}} or {{ns:User}} | User | {{ns:3}} or {{ns:User_talk}} | User talk | |
{{ns:4}} or {{ns:Project}} | Iskomunidad | {{ns:5}} or {{ns:Project_talk}} | Iskomunidad talk | |
{{ns:6}} or {{ns:File}} or {{ns:Image}} | File | {{ns:7}} or {{ns:File_talk}} or {{ns:Image_talk}} | File talk | |
{{ns:8}} or {{ns:MediaWiki}} | MediaWiki | {{ns:9}} or {{ns:MediaWiki_talk}} | MediaWiki talk | |
{{ns:10}} or {{ns:Template}} | Template | {{ns:11}} or {{ns:Template_talk}} | Template talk | |
{{ns:12}} or {{ns:Help}} | Help | {{ns:13}} or {{ns:Help_talk}} | Help talk | |
{{ns:14}} or {{ns:Category}} | Category | {{ns:15}} or {{ns:Category_talk}} | Category talk |
Formatting
Usage | Output | Description |
---|---|---|
{{lc:string}} | text transform | The lowercase input. |
{{lcfirst:string}} | teXt tRaNsFoRm | The input with the first character lowercase. |
{{uc:string}} | TEXT TRANSFORM | The uppercase input. |
{{ucfirst:string}} | TeXt tRaNsFoRm | The input with the first character uppercase. |
{{formatnum:unformatted number}} {{formatnum:formatted number|R}} |
−987,654,321.654321 -987654321.654321 |
The input with decimal and decimal group separators, and localized digit script, according to the wiki's default locale. the |R parameter can be used to unformat a number, for use in mathmatical situations. |
{{padleft:xyz|number}} {{padleft:xyz|number|separator}} |
00xyz __xyz |
Inserts a string of padding characters (character chosen in third parameter; default '0') of a specified length (second paramater) 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; ie. {{padleft:44|3|0}} produces 044. |
{{padright:xyz|number}} {{padright:xyz|number|separator}} |
xyz00 xyz__ |
Identical to padleft, but adds padding characters to the right side. |
{{plural:2|is|are}} | are | Outputs the correct given pluralization form (parameters except first) depending on the count (first parameter). Plural transformations are used for languages like Russian based on "count mod 10". |
{{grammar:N|noun}} | noun |
Outputs the correct inflected form of the given word described by the inflection code after the colon (language-dependent). Grammar transformations are used for inflected languages like Polish. |
Miscellaneous
Usage | Output | Description | Version |
---|---|---|---|
{{int:message name}} {{int:edit}} |
Edit (depends on user language, try: fr •ja) |
Internationalizes (translates) the given interface (namespace) message into the user language. | |
{{#language:language code}} {{#language:ar}} {{#language:th}} |
language code العربية ไทย |
The native name for the given language code. | |
{{#special:special page name}} {{#special:Special:UserLogin}} |
Special:Special page name Special:UserLogin |
The localized name for the given canonical Special: page. | |
{{#tag:tagname}} {{#tag:tagname |tag content |parameter=value |parameter2=value }} |
(depends on parser tag) | Alias for XML-style parser or extension tags, but parsing wiki code. Attribute values can be passed as parameter values ('<tagname attribute="value"> ' → '{{#tag:tagname|attribute=value}} '), and inner content as an unnamed parameter ('<tagname>content</tagname> ' → '{{#tag:tagname|content}} ').
| |
{{GENDER:username |return text if user is male |return text if user is female |return text if user hasn't defined their gender}} |
(depends on the named user's gender) | A switch for the gender set in Special:Preferences |