Template:Cookbook other/doc
This is a documentation subpage for Template:Cookbook other It may contain usage information, categories and other content that is not part of the original template page. |
This is the {{cookbook other}} meta-template.
This template helps other templates detect if they are on a "Cookbook:" page or some "other" type of page.
Usage
editThis template usually takes two parameters, like this:
{{cookbook other | Cookbook page text | Other pages text }}
If the template is on a "Cookbook:" page, it will return this:
- Cookbook page 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 Cookbook pages. Thus not adding other pages that just show the template. Like this:
{{cookbook other | [[Category:Some Cookbook category]] }}
Or to warn that a template should not be used on other pages:
{{cookbook other | | This template should only be used on Cookbook pages. }}
Note that in the first case above the "other" parameter was not used, and in the second example the "book" parameter was left empty.
Demospace
editFor testing and demonstration purposes this template can take a parameter named demospace.
- If it has the value cookbook it returns the Cookbook 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:
{{cookbook other | Cookbook page text | Other pages text | demospace = cookbook }}
No matter on what kind of page the code above is used it will return this:
- Cookbook page 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:
{{cookbook other | Cookbook page text | Other pages text | demospace = {{{demospace|}}} }}
Technical details
editThis template detects "Cookbook talk:" pages as type other.
This template works like {{main talk other}}; for more examples and technical details see full documentation there.
See also
editEasy to use namespace-detection templates:
- {{main other}} – For book page templates.
- {{talk other}} – For talk page templates.
- {{user other}} – For user page templates.
- {{wikibooks other}} – For project page templates.
- {{subject other}} - For subject page templates.
- {{file other}} – For file (image) templates.
- {{template other}} – For detecting template pages.
- {{help other}} – For help page templates.
- {{category other}} – For category templates.
- {{wikijunior other}} – For Wikijunior templates.
- {{cookbook other}} – For Cookbook templates.
More complex namespace-detection templates:
- {{namespace detect}} – The very versatile one.
- {{namespace detect showall}} – The extremely versatile one; has input reuse.
- {{talkspace detect}} - For detecting talk pages on various namespaces.
- {{main talk other}} – Separates some namespaces.
Pagename-handling and detection templates:
- {{basepage subpage}} – For detecting if on a basepage, subpage, or subsubpage.
- {{if pagename}} – For pattern matching on the pagename.
- {{IP-user other}} – For detecting IP-user pages.