Template:Talk other/doc
{{#invoke:Message box|mbox}} {{#invoke:Message box|ombox}}
This is the {{talk other}} meta-template.
This template helps other templates detect if they are on a talk page or some "other" type of page.
Usage
This template usually takes two parameters, like this:
{{talk other | Talk pages text | Other pages text }}
If the template is on any talk page, it will return this:
- Talk pages text
If the template is on any other page, it will return this:
- Other pages text
A typical usage case could be to make it so that a template only adds a category when on talk pages. Thus not adding other pages that just show the template. Like this:
{{talk other | [[Category:Some talk page category]] }}
Or to warn that a template should not be used on other pages:
{{talk other | | This template should only be used on talk pages. }}
Note that in the first case above the "other" parameter was not used, and in the second example the "talk" parameter was left empty.
Demospace
For testing and demonstration purposes this template can take a parameter named demospace.
- If it has the value talk it returns the talk pages 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:
{{talk other | Talk pages text | Other pages text | demospace = talk }}
No matter on what kind of page the code above is used it will return this:
- Talk pages text
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:
{{talk other | Talk pages text | Other pages text | demospace = {{{demospace|}}} }}
Technical details
This template detects all types of talk pages as type talk. That is, "Talk:", "User talk:", "File talk:" and so on are all of type talk.
On 28 December 2009, the new namespaces "Book:" and "Book talk:" were added to the English Wikipedia. This template correctly considers the "Book:" namespace to be type other, and "Book talk:" to be type talk.
This template works like {{main talk other}}, for more examples and technical details see full documentation there.
See also
Easy to use namespace-detection templates:
- {{main other}} – For article templates.
- {{talk other}} – For talk page templates.
- {{book other}} – For detecting book pages.
- {{category other}} – For category templates.
- {{draft other}} – For detecting draft pages.
- {{file other}} – For file (image) templates.
- {{help other}} – For help page templates.
- {{module other}} – For detecting module pages.
- {{portal other}} – For portal templates.
- {{template other}} – For detecting template pages.
- {{user other}} – For user page templates.
- {{wikipedia other}} – For detecting "Wikipedia:" pages.
More complex namespace-detection templates:
- {{namespace detect}} – The very versatile one.
- {{namespace detect showall}} – The extremely versatile one, has input reuse.
- {{main talk category other}} – Separates some namespaces.
- {{main talk other}} – Separates some namespaces.
- {{talkspace detect}} – For detecting talk pages on various namespaces.
Pagename-handling and detection templates:
- {{basepage subpage}} – For detecting if on a basepage, subpage or subsubpage.
- {{pgn}} – Can take apart and put together pagenames in several ways.
- {{if pagename}} – For pattern matching on the pagename.
- {{if pagename multi}} – For pattern matching on the pagename, has input reuse.
- {{IP-talk}} – Return: 1) IP user talk page 2) registered user talk page 3) not user talk page.
- {{IP-user other}} – For detecting IP-user pages.
Technical stuff:
- Wikipedia:Namespace – Lists all the namespaces.
- mw:Help:Magic words – About
{{NAMESPACE}}
etc. - mw:Help:Extension:ParserFunctions – About
{{#ifeq:|||}}
etc.