Zum Inhalt springen

Vorlage:Namespace detect/Doku: Unterschied zwischen den Versionen

More documentation, about the "demospace" parameter.
imported>Davidgothberg
(Added a bunch of usage examples. Intermediate save.)
imported>Davidgothberg
(More documentation, about the "demospace" parameter.)
Zeile 8: Zeile 8:
It detects and groups all the different [[Wikipedia:Namespace#Enumeration|namespaces]] used on Wikipedia into several types:
It detects and groups all the different [[Wikipedia:Namespace#Enumeration|namespaces]] used on Wikipedia into several types:


:'''main''' = Main / article space, as in normal Wikipedia articles.
:'''main''' = Main/article space, as in normal Wikipedia articles.
:'''talk''' = Any talk space, such as page names that start with "Talk:", "User talk:", "Image talk:" and so on.
:'''talk''' = Any talk space, such as page names that start with "Talk:", "User talk:", "Image talk:" and so on.
:'''user, wikipedia, image, mediawiki, template, help, category''' and '''portal''' = The other namespaces except the talk pages.
:'''user, wikipedia, image, mediawiki, template, help, category''' and '''portal''' = The other namespaces except the talk pages.
Zeile 17: Zeile 17:
=== Usage ===
=== Usage ===


This template takes one or more parameters named after the different namespaces as listed above. Like this:
This template takes one or more parameters named after the different page types as listed above. Like this:


<pre>
<pre>
Zeile 43: Zeile 43:
}}
}}


The example above made the template return something for all namespaces. But if we don't use the '''other''' parameter then it will not return anything for the other namespaces. Like this:
The example above made the template return something for all page types. But if we don't use the '''other''' parameter then it will not return anything for the other page types. Like this:


<pre>
<pre>
Zeile 58: Zeile 58:
}}
}}


By using an empty parameter you can make it so the template doesn't render anything for some specific namespaces. Like this:
By using an empty parameter you can make it so the template doesn't render anything for some specific page types. Like this:


<pre>
<pre>
Zeile 67: Zeile 67:
</pre>
</pre>


The code above will render nothing when on article pages, but will return this when on other pages:
The code above will render nothing when on mainspace (article) pages, but will return this when on other pages:


:{{namespace detect
:{{namespace detect
Zeile 74: Zeile 74:
}}
}}


==== Demospace ====
For testing and demonstration purposes this template can take a parameter named '''demospace'''. Demospace understands any of the page type names used by this template, including the '''other''' type. It tells the template to behave like it is on some specific type of page. Like this:
<pre>
{{namespace detect | demospace = main
| main = Article text
| other = Other pages text
}}
</pre>
No matter on what kind of page the code above is used it will return this:
:{{namespace detect | demospace = main
| main = Article text
| other = Other pages text
}}
You might want to test and demonstrate the different appearances of your template in its documentation. Then it is convenient to make it so your template can take the demospace parameter and send it on to the {{tl|namespace detect}} template. Then do like this:
<pre>
{{namespace detect
| demospace = {{{demospace|}}}
| main = Article text
| other = Other pages text
}}
</pre>
If the '''demospace''' parameter is empty or undefined then the template will detect page types as usual.


=== See also ===
=== See also ===
Anonymer Benutzer