Changes

Jump to navigation Jump to search
document shortcut
{{Documentation subpage}}
<!-- PLEASE ADD CATEGORIES WHERE INDICATED AT THE BOTTOM OF THIS PAGE -->
{{Template shortcut|ns828}}
This is the {{tl|module other}} meta-template.

This template helps other templates detect if they are on a "Module:" page or some "other" type of page.

=== Usage ===

This template usually takes two parameters, like this:

<pre>
{{module other | Module page text | Other pages text }}
</pre>

If the template is on a "Module:" page, it will return this:

:{{module other | demospace=module | Module page text | Other pages text }}

If the template is on any other page, it will return this:

:{{module other | Module page text | Other pages text }}

A typical usage case could be to make it so that a template only adds a category when on module pages. Thus not adding other pages that just show the template. Like this:

<pre>
{{module other | [[Category:Some module category]] }}
</pre>

Or to warn that a template should not be used on other pages:

<pre>
{{module other | | This template should only be used on module pages. }}
</pre>

Note that in the first case above the "other" parameter was not used, and in the second example the "module" parameter was left empty.

=== Demospace ===

For testing and demonstration purposes this template can take a parameter named '''demospace'''.

* If it has the value '''module''' it returns the module page text.
* It if has the value '''other''' or any other value such as the name of some other namespace it returns the other pages text.
* If the parameter is empty or undefined, the actual page type determines the result.

Like this:

<pre>
{{module other
| Module page text
| Other pages text
| demospace = module
}}
</pre>

No matter on what kind of page the code above is used it will return this:

:{{module other
| Module page text
| Other pages text
| demospace = module
}}

You can make it so your template also understands the '''demospace''' parameter. That means you can demonstrate the different appearances of your template in the documentation for your template. Then do like this:

<pre>
{{module other
| Module page text
| Other pages text
| demospace = {{{demospace|}}}
}}
</pre>

=== Technical details ===

This template detects "Module talk:" pages as type '''other'''.

This template works like {{tl|main talk other}}, for more examples and technical details see full documentation there.


{{Namespace and pagename-detecting templates}}

<includeonly>
<!-- CATEGORIES BELOW THIS LINE, PLEASE: -->
[[Category:Namespace manipulation templates]]
[[Category:Module namespace templates]]
</includeonly>
Anonymous user

Navigation menu