Template:documentation
- The following documentation is located at Template:documentation/documentation. [edit]
- Useful links: subpage list • links • redirects • transclusions • errors (parser/module) • sandbox
This template automatically displays a documentation section like you are seeing now. The content of this section comes from a subpage named <var>page</var>/documentation
; e.g. the documentation for Template:affix is located on the page named Template:affix/documentation
. In order for this documentation to be displayed, templates must manually invoke {{documentation}}
inside of a <noinclude>...</noinclude>
section; see #Usage below. (However, {{documentation}}
is automatically invoked on module and JavaScript pages. The mechanism implementing this is described in more detail in the documentation for Module:documentation, which implements the {{documentation}}
template.)
Usage
template code ...<noinclude>
{{documentation}}
</noinclude>
or
<onlyinclude>
template code . . .</onlyinclude>
{{documentation}}
The most common practice is to place the {{documentation}}
template in <noinclude>
tags. Alternatively, the template code itself can be wrapped in <onlyinclude>
tags and the {{documentation}}
template should be outside of those tags. Both of these methods ensure that the documentation is not transcluded onto other pages as part of the template.
In order to place the template itself in a category, or supply interwiki links, put those categories and interwiki links on the documentation page, inside <includeonly>
tags. If the documentation page contains <includeonly>
or <noinclude>
tags as part of the documentation, use {{wikitag}}
or replace <
with <
.
Functions
If the documentation page doesn't exist, the "edit" link includes a preload parameter so that clicking it will pre-fill the edit form with a stub documentation page.
Rationale
Use of this template allows templates to be protected where necessary, while allowing anyone to edit the documentation, categories, and interwiki links. In addition, modules strictly require documentation pages as they cannot be categorized or documented any other way, so it makes sense to handle templates likewise.