Help:Templates: Difference between revisions
No edit summary |
m (Protected "Help:Templates" [edit=sysop:move=sysop]) |
Latest revision as of 18:46, 3 June 2007
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 with numbered parameters | |
'''A little thank you...'''<br> <small>for {{{1}}}.<br> hugs, {{{2}}}</small> | |
You type | You get |
{{Thankyou|all|~~~}}
|
|
with named parameters | |
'''A little thank you...'''<br> <small>for {{{reason}}}.<br> hugs, {{{signature}}}</small> | |
You type | You get |
{{Thankyou |reason=all |signature=~~~}} |
You can define parameters in templates either numbered as {{{1}}}
or named {{{param}}}
.
Example: you want a little 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.