Help:Template

From wiki.thepatternofeverything.org
Jump to: navigation, search

If you have standard texts you want to include on several pages, the MediaWiki template feature comes into play (like the tag above which is included in the pages of the Help namespace).

Creating a template

Templates must be prefixed with Template, you create them like any other wiki page.

Using a template

Templates are wiki pages which can be used in other pages in three ways:

{{Name}} includes the current content of the page "[[Template:Name]]".
{{subst:Name}} inserts the content of the page "[[Template:Name]]" when you save your text.
{{msgnw:Name}} includes the template in raw wiki syntax, like <nowiki> does

Using parameters in templates

Template:Hl2 colspan="2" align="center" |Template with numbered parameters
 
'''A little thank you...'''<br>
<small>for {{{1}}}.<br>
hugs, {{{2}}}</small>
Template:Hl2|You type Template:Hl2|You get
{{Thankyou|all|~~~}}

Template:Thankyou

Template:Hl2 colspan="2" align="center" |with named parameters
 
'''A little thank you...'''<br>
<small>for {{{reason}}}.<br>
hugs, {{{signature}}}</small>
Template:Hl2|You type Template:Hl2|You get
{{Thankyou
|reason=all
|signature=~~~}}

Template:Thankyou

You can define parameters in templates either numbered as {{{1}}} or named {{{param}}}.

Example: you want a litte thank you note you can put other users on their talk page with a reason and your signature. In the Template:Thankyou you enter your text.

When using the template on a page, you fill in the parameter values, separated by a pipe char (|): {{Thankyou|all|~~~}} or - if you have used named parameters {{Thankyou|reason=all|signature=~~~}}. The advantage of using named parameters in your template is that they are flexible in order. It also makes the template easier to understand if you have many parameters. If you want to change the order of numbered parameters, you have to mention them explicitly: {{Thankyou|2=~~~|1=all}}.

Control template inclusion

You can control template inclusion by the use of <noinclude> and <includeonly> tags.

Anything between <noinclude> and </noinclude> will be processed and displayed only when the page is being viewed directly, not included.

Possible applications are:

  • Categorising templates
  • Interlanguage links to similar templates in other languages
  • Explanatory text about how to use the template

The converse is <includeonly>. Text between <includeonly> and </includeonly> will be processed and displayed only when the page is being included. The obvious application is to add all pages containing a given template to a category.

Note that the usual update problems apply -- if you change the categories inside a template, the categories of the referring pages won't be updated until those pages are edited.