Help:Magic words for beginners
- For more detailed information on magic words, see Help:Magic words
Magic words are words surrounded by brackets or underscores which most often insert or display the current value of what they are called. These include parser functions, variables and behavior switches and are features of wikitext. They are interpreted by the Metawiki software and are often used in templates so that they show different information depending on which page they are on and many other conditions.
Contents |
[edit] Types
There are three types of magic words:
- Behavior switches: uppercase words surrounded by double underscores, like. __NOTOC__
- Variables: uppercase words surrounded by double braces, like {{PAGENAME}}and function somewhat similarly to templates.
- Parser functions: These include expressions and consist of keywords (some beginning #) in double braces with parameters following a colon, ex. {{#expr:2+2}}
[edit] Things To Remember
- Most magic words are not case-sensitive, although some are, so you should be careful
- "{{SITENAME}}" produces "Gunsopedia", while "{{sitename}}" produces "
- REDIRRECTHelp:Magic words#Technical metadata"
- Whitespace is not counted in from the front and back of keywords and parameters and the same also applies to template code.
- "{{ Nofeed |Art=Gunsopeida }}" and {{Nofeed|Art=Gunsopeida}} will both succeed in producing the "Nofeed" template.
- Page-dependent magic words will change or show information about the current page, even if the word is from a template, though in most cases, this is the desired effect.
- If I insert {{exampletemplate}} and it says {{PAGENAME}}, I will see "Magic words for beginners" even though it is from "Template:example template".
- If you want a magic word to paste in its value at the time of saving, you can substitute it in the same way that templates are substituted (using the subst: keyword).
- {{CURRENTTIME}} will always display the current time and remain as is, while {{subst:CURRENTTIME}} will result in, for example, 9:45 being inserted and always remaining as regular text.
[edit] Behavior Switches
For a more detailed explanation, refer to the behavior switches MediaWiki page.
[edit] Table Of Contents
- __NOTOC__ (can be placed anywhere in the wikitext; prevents a table of contents)
- __FORCETOC__ (can be placed anywhere in the wikitext; makes a table of contents appear in its normal position)
- __TOC__ (places a table of contents at its position)
[edit] Edit\Section Links
- __NOEDITSECTION__ (hides section edit links beside headings)
- __NEWSECTIONLINK__ (adds a "+" or "new section" link for adding a new section on a non-talk page)
- __NONEWSECTIONLINK__ (removes the "+" or "new section" link on "Talk" pages)
[edit] Categories and Indexing
- __NOGALLERY__ (on category pages, replaces thumbnails with normal links)
- __HIDDENCAT__ (on category pages, makes it a hidden category)
- __INDEX__ (tells search engines to index the page (show in results))
- __NOINDEX__ (tells search engines not to index the page (not show in results))
[edit] Titles and Sorting
- {{DISPLAYTITLE:title}} (changes the displayed form of the page title)
- {{DEFAULTSORT:sortkey}} (sets a default category sorting key)
[edit] Variables
For documentation, you may wish to read the variables MediaWiki page.
- {{FULLPAGENAME}} (The page title, including namespace.)
- Shown here: Help:Magic words for beginners (Ex. User:QwerpQwertus/Adoption)
- {{PAGENAME}} (page title without namespace)
- Shown here: Magic words for beginners (Ex. User:QwerpQwertus/Adoption)
- {{BASEPAGENAME}} (the page title without the current subpage or namespace — the parent page without the namespace.)
- Shown here: Magic words for beginners (Ex. User:QwerpQwertus/Adoption)
- {{SUBPAGENAME}} (subpage part of title)
- Shown here: Magic words for beginners (Ex. User:QwerpQwertus/Adoption)
- {{SUBJECTPAGENAME}} (associated non-talk page)
- Shown here: Help:Magic words for beginners (Ex. "Talk:Gunsopeida" makes "Gunsopeida")
- {{TALKPAGENAME}} (associated talk page)
- Shown here: Help talk:Magic words for beginners (Ex. "Gunsopeida" makes "Talk:Gunsopeida")
- {{NAMESPACE}} (namespace of current page)
- Shown here: Help (Ex. User:QwerpQwertus/Adoption makes "User")
- {{SUBJECTSPACE}}, {{ARTICLESPACE}} (associated non-talk namespace)
- Shown here: Help, Help (Ex. User talk:QwerpQwertus/Adoption makes "User")
- {{TALKSPACE}} (associated talk namespace)
- Shown here: Help talk (Ex. "Gunsopeida" makes "Talk:Gunsopeida")
- {{FULLPAGENAMEE}}, {{NAMESPACEE}} etc. (URL-encoded equivalents)
- Shown here: Help:Magic_words_for_beginners (Ex. "Gunsopeida" makes "http://gunsopedia.com/Gunsopeida")
- {{SITENAME}} (Gunsopedia)
- {{SERVER}} (http://en.wikipedia.org)
- {{SERVERNAME}} (www.gunsopedia.com)
- {{SCRIPTPATH}} ()
- {{CURRENTVERSION}} (current MediaWiki version)
- {{REVISIONID}} (latest revision to current page)
- {{REVISIONDAY}}, {{REVISIONDAY2}}, {{REVISIONMONTH}}, {{REVISIONYEAR}}, {{REVISIONTIMESTAMP}}, {{REVISIONUSER}} (date, time, editor at last edit)
- {{CURRENTYEAR}}, {{CURRENTMONTH}}, {{CURRENTMONTHNAME}}, {{CURRENTMONTHABBREV}}, {{CURRENTDAY}}, {{CURRENTDAY2}}, {{CURRENTDOW}}, {{CURRENTDAYNAME}}, {{CURRENTTIME}}, {{CURRENTHOUR}}, {{CURRENTWEEK}}, {{CURRENTTIMESTAMP}} (current date/time variables)
- {{LOCALYEAR}} etc. (as above, based on site's local time)
- {{NUMBEROFPAGES}}, {{NUMBEROFARTICLES}}, {{NUMBEROFFILES}}, {{NUMBEROFEDITS}}, {{NUMBEROFVIEWS}}, {{NUMBEROFUSERS}}, {{NUMBEROFADMINS}}, {{NUMBEROFACTIVEUSERS}} (statistics on English Wikipedia; add :R to return numbers without commas)
[edit] Parser functions
These are documented at the main documentation page unless otherwise stated.
[edit] Metadata
- {{PAGESIZE:page name}} (size of page in bytes)
- {{PROTECTIONLEVEL:action}} (protection level for given action on the current page)
- {{PAGESINCATEGORY:categoryname}} (number of pages in the given category)
- {{NUMBERINGROUP:groupname}} (number of users in a specific group)
Add |R to return numbers without commas.
[edit] Formatting
- {{lc:string}} (convert to lower case)
- {{lcfirst:string}} (convert first character to lower case)
- {{uc:string}} (convert to upper case)
- {{ucfirst:string}} (convert first character to upper case)
- {{formatnum:unformatted num}} (format a number with comma separators; add |R to unformat a number)
- {{#formatdate:date|format}} (formats a date according to user preferences; a default can be given as an optional case-sensitive second parameter for users without date preference; can convert a date from an existing format to any of dmy, mdy, ymd or ISO 8601 formats, with the user's preference overriding the specified format)
- {{padleft:xyz|stringlength}}, {{padright:xyz|stringlength}} (pad with zeros to the right or left; an alternative padding string can be given as a third parameter)
- {{plural:n|is|are}} (produces alternative text according to whether n is greater than 1)
- {{#time:format string|date/time object}} (for date/time formatting; also #timel for local time. Covered at the extension documentation page.)
- {{gender:username|masculine|female|neutral}} (produces alternate text according to the gender specified by the given user in his/her preferences)
[edit] Paths
- {{localurl:page name}}, {{localurl:page name|query string}} (relative path to the title)
- {{fullurl:page name}}, {{fullurl:page name|query_string}} (absolute path to the title)
- {{filepath:file name}} (absolute URL to a media file)
- {{urlencode:string}} (input encoded for use in URLs)
- {{anchorencode:string}} (input encoded for use in URL section anchors)
- {{ns:n}} (name for the namespace with index n; use {{nse:}} for URL-encoded equivalent)
- {{#rel2abs: path }} (converts a relative file path to absolute; see the extension documentation)
- {{#titleparts: pagename | number of segments to return | first segment to return }} (splits title into parts; see the extension documentation)
[edit] Conditional expressions
These are covered at the extension documentation page. Some parameters are optional.
- {{#expr: expression }} (evaluates the given expression; see Help:Calculation)
- {{#if: test string | value if non-empty | value if empty }} (selects one of two values based on whether the test string is empty)
- {{#ifeq: string 1 | string 2 | value if equal | value if unequal }} (selects one of two values based on whether the test strings are equal – numerically if applicable)
- {{#iferror: test string | value if error | value if correct }} (selects value based on whether the test string generates a parser error)
- {{#ifexpr: expression | value if true | value if false }} (selects value based on evaluation of expression)
- {{#ifexist: page title | value if exists | value if doesn't exist }} (selects value depending on whether a page title exists)
- {{#switch: test | case1 = value for case 1 | ... | default }} (provides alternatives based on the value of the test string)
[edit] See also
For more detailed information on all magic words (behaviour switches, variables and parser functions), consider reading:
- Help:Magic words: a more detailed help page.
- mw:Help:Magic words: details of all available MediaWiki standard magic words.
- mw:Help:Extension:ParserFunctions: parser function extensions to MediaWiki, to supplement magic words.
- mw:Manual:Extending wiki markup: extending MediaWiki wiki markup by adding to standard tokens.