This is the {{}} meta-template.
It helps other templates detect if they are on a "Template:" page or some "other" type of page.
Usage
This template usually takes two parameters, like this:
{{template other | Template page text | Other pages text }}
If the template is on a "Template:" page, it will return this:
- Template 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 not on a template page. Thus not adding the template itself and other templates that are built with it to the category. Like this:
{{template other | | [[Category:Some maintenance category]] }}
Note that in the example above the "template" parameter was left empty.
Demospace
For testing and demonstration purposes this template can take a parameter named demospace.
- If it has the value template it returns the template 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:
{{template other
| Template page text
| Other pages text
| demospace = template
}}
No matter on what kind of page the code above is used it will return this:
- Template 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:
{{template other
| Template page text
| Other pages text
| demospace = {{{demospace|}}}
}}
Technical details
This template detects "Template talk:" pages as type other.
This template works like {{main talk other}}, for more examples and technical details see full documentation there.
See also
Namespace and pagename-detecting templates |
|---|
| Namespace | |
|---|
| Pagename | | When on basepage | Detects and acts according to whether it is on a basepage or on any subpage (that is, a ../.. subpage). |
|---|
| When pagename is | For pattern matching on the pagename. |
|---|
| Module:Page | Can take apart and put together pagenames in several ways. |
|---|
| IP-talk | Returns IP-user talkpage, registered-user talkpage or non-user talkpage. |
|---|
| IP-user other | For detecting IP-user pages. |
|---|
| Subpage other | Pagename has an after-slash part (not in mainspace) |
|---|
| Sandbox other | Page is subpage /sandbox (template space) |
|---|
| Testcases other | Page is subpage /testcases (template space) |
|---|
| Rootpage other | Page is rootpage (vs. /subpage) (template space) |
|---|
|
|---|
| Others | | Stub other | Detects whether it is on a page with a stub template or not. |
|---|
| Redirect other | Detects whether it is on a redirect or not. |
|---|
| If preview | Detects whether page is viewed as a preview or not. |
|---|
| If IP | Displays different content to IP users and logged-in users. |
|---|
| If autoconfirmed | Displays different content to autoconfirmed and non-autoconfirmed users. |
|---|
| If extended confirmed | Displays different content to extended confirmed and non-extended confirmed users. |
|---|
| If administrator | Displays content only to admins. |
|---|
| If mobile | Displays different content to mobile users and desktop users. |
|---|
| Noscript | Detects whether page is viewed with a JavaScript-capable client or not. |
|---|
|
|---|
|