4 Appendix: Magic words

No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 21: Line 21:
==Behavior switch==
==Behavior switch==


====Characteristics of a behavior switch====
Behaviour switchers allow you to control the appearance or behaviour of a page. It is also known as "double underscore".


*'''Purpose:''' controls the layout or behavior of the page
It is used to specify desired omissions or insertions in the content. Behavioural switches can theoretically be entered anywhere in the wikicode, but this depends on the function. For example, the magic word that creates a table of contents is typically at the top of the article.
*'''Syntax:''' <code><nowiki>__NOTOC__</nowiki></code>


====Description====
Most behavioural switches can be inserted via the Options () menu item in the visual editor.
 
{| class="wikitable" style="width:100%;"
A behavior switch includes or omits certain elements of the page. It is also known as "double underscore". Behavior switches can be put anywhere in the source code of the designated page (usually at the end of the page). The behavior switch  <code><nowiki>__TOC__</nowiki></code> produces as output the table of contents exactly where it was inserted on the page.====
! style="background-color:rgb(234, 236, 240);text-align:center;box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);width:200px;" class="" |Behaviour switch
 
! style="background-color:rgb(234, 236, 240);text-align:center;box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" class="" |Explanation
===Variable===
|-
You can use variables to display information about the current page, the wiki or the date.
| style="" |<nowiki>__FORCETOC__</nowiki>
| style="" |Forces a table of contents in the usual place at the top of the page (before the first heading)
|-
| style="" |<nowiki>__HIDETITLE__</nowiki>
| style="" |Hides the title area of a page. This is often used on portal pages.
|-
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);width:200px;" |<nowiki>__NEWSECTIONLINK__</nowiki>
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" |Inserts a link (usually "+") next to the "Edit" link, which can be used to create a new section (only on non-discussion pages)
|-
| style="" |__NODISCUSSION__
| style="" |Hides the discussion section at the bottom of the page.
|-
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);width:200px;" |<nowiki>__NOEDITSECTION__</nowiki>
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" |Hides the "Edit" link next to a heading.
|-
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);width:200px;" |<nowiki>__NOTOC__</nowiki>
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" |Hides the table of contents (TOC) on this page
|-
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);width:200px;" |<nowiki>__TOC__</nowiki>
| style="box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" |You can use this to move the table of contents to any position in the article. If a <nowiki>__NOTOC__</nowiki> exists, this will be "overwritten". However, only one table of contents can be inserted. If several are inserted, only the first (topmost) one is displayed.
|-
| style="" |__NOSTASH__
| style="" |Hides the section for file attachments at the bottom of the page
|}


The syntax is the same as that of the templates, so there may be conflicts if the names are the same. If there is a naming conflict between the template and the variable, the variable will be used. If you still want to use the template, you should precede it with ‘Template:’ <code><nowiki>{{Template:Templatename}}</nowiki></code>
== Variable ==
Variables contain (simple) dynamic data. If a template name conflicts with a variable, the variable is used. For example, you have the variable <code><nowiki>{{PAGENAME}}</nowiki></code>. In that case, you have to transclude the template with the same name as <code><nowiki>{{Template:PAGENAME}}</nowiki></code>.
{| class="wikitable" style="width:950px;"
{| class="wikitable" style="width:950px;"
! style="background-color:rgb(234, 236, 240);text-align:center;box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" class="" |Variable
! style="background-color:rgb(234, 236, 240);text-align:center;box-sizing:inherit;padding:0.2em 0.4em;border:1px solid rgb(162, 169, 177);" class="" |Variable
Line 68: Line 91:
|}
|}


====Characteristics of a variable====
== Parser Function ==
 
*'''Purpose:''' returns information about the page, wiki, or date
*'''Syntax:''' <code><nowiki>{{PAGENAME}}</nowiki></code>
 
====Description====
Variables contain (simple) dynamic data. If a template name conflicts with a variable, the variable is used. For example, you have the variable <code><nowiki>{{PAGENAME}}</nowiki></code>. In that case, you have to transclude the template with the same name as <code><nowiki>{{Template:PAGENAME}}</nowiki></code>.
 
===Parser Function===


=====Characteristics of a parser function=====
=====Characteristics of a parser function=====
Line 84: Line 99:


=====Description=====
=====Description=====
Parser functions are similar to variables, but take one or more parameters.Example:<syntaxhighlight lang="php">
Parser functions are similar to variables, but take one or more parameters.  
 
Example:<syntaxhighlight lang="php">
{{#ifeq:{{{type}}}|warning
{{#ifeq:{{{type}}}|warning
|This is a warning!
|This is a warning!
Line 93: Line 110:
Parser functions can also be "tag-like", e.g. <code><nowiki>{{#ask:...}}</nowiki></code> from SemanticMediaWiki. For more information, refer to the MediaWiki help pages [https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions mediawiki.org/wiki/Help:Extension:ParserFunctions] and [https://www.mediawiki.org/wiki/Help:Magic_words#Parser_functions mediawiki.org/wiki/Help:Magic_words#Parser_functions].
Parser functions can also be "tag-like", e.g. <code><nowiki>{{#ask:...}}</nowiki></code> from SemanticMediaWiki. For more information, refer to the MediaWiki help pages [https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions mediawiki.org/wiki/Help:Extension:ParserFunctions] and [https://www.mediawiki.org/wiki/Help:Magic_words#Parser_functions mediawiki.org/wiki/Help:Magic_words#Parser_functions].


===Tag===
== Tag ==


====Characteristics of a tag====
====Characteristics of a tag====

Latest revision as of 11:38, 21 May 2025


A "Magic word" is a string of text that is recognized by the MediaWiki software. It triggers the software to return the value of a function, such as dates, website statistics or page names.

Magic words are inserted directly in the source code.

Types of Magic words

There are basically four different types of Magic words:

Behavior switch

Behaviour switchers allow you to control the appearance or behaviour of a page. It is also known as "double underscore".

It is used to specify desired omissions or insertions in the content. Behavioural switches can theoretically be entered anywhere in the wikicode, but this depends on the function. For example, the magic word that creates a table of contents is typically at the top of the article.

Most behavioural switches can be inserted via the Options () menu item in the visual editor.

Behaviour switch Explanation
__FORCETOC__ Forces a table of contents in the usual place at the top of the page (before the first heading)
__HIDETITLE__ Hides the title area of a page. This is often used on portal pages.
__NEWSECTIONLINK__ Inserts a link (usually "+") next to the "Edit" link, which can be used to create a new section (only on non-discussion pages)
__NODISCUSSION__ Hides the discussion section at the bottom of the page.
__NOEDITSECTION__ Hides the "Edit" link next to a heading.
__NOTOC__ Hides the table of contents (TOC) on this page
__TOC__ You can use this to move the table of contents to any position in the article. If a __NOTOC__ exists, this will be "overwritten". However, only one table of contents can be inserted. If several are inserted, only the first (topmost) one is displayed.
__NOSTASH__ Hides the section for file attachments at the bottom of the page

Variable

Variables contain (simple) dynamic data. If a template name conflicts with a variable, the variable is used. For example, you have the variable {{PAGENAME}}. In that case, you have to transclude the template with the same name as {{Template:PAGENAME}}.

Variable Output Description
{{SITENAME}} BlueSpice Helpdesk Name of the wiki
{{CURRENTTIME}} 19:23 Time (24-hour HH:mm format)
{{CURRENTDAY}} 24 Current day (no preceding zero)
{{CURRENTMONTH}} 05 Month (with preceding zero)
{{NUMBEROFARTICLES}} 595 Shows the number of all existing articles in the wiki (in the main namespace)
{{NAMESPACE}} Manual Shows the namespace of the article
{{PAGENAME}} MagicWords Shows the page name as it was created (cf. changing article titles)

Parser Function

Characteristics of a parser function
  • Purpose: simple "programming language" for page content (mainly in templates)
  • Syntax: {{#if:{{{field|}}} | {{{field|}}} | N/A }}
Description

Parser functions are similar to variables, but take one or more parameters.

Example:

{{#ifeq:{{{type}}}|warning
|This is a warning!
|
}}

They are used for simple logic only, since they are hard to read and to maintain on a larger scale. If complex logic is required, consider Lua scripts in the "Module" namespace (mediawiki.org/wiki/Extension:Scribunto) and invoke using {{#invoke:...}}

Parser functions can also be "tag-like", e.g. {{#ask:...}} from SemanticMediaWiki. For more information, refer to the MediaWiki help pages mediawiki.org/wiki/Help:Extension:ParserFunctions and mediawiki.org/wiki/Help:Magic_words#Parser_functions.

Tag

Characteristics of a tag

  • Purpose: often used for custom development to process dynamic content
  • Syntax: <smartlist />

Description

Tags are implemented in PHP as part of a MediaWiki extension. Tags with "bs:" prefix come from BlueSpice. All others come from MediaWiki or from third-party extensions, e.g. the extension SyntaxHighlight.

Related info



PDF exclude - start

To submit feedback about this documentation, visit our community forum.

PDF exclude - end