Template:Main other/doc: Difference between revisions

From HIBIKIFORUM
Jump to navigation Jump to search
(Created page with "{{Documentation subpage}} <!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE --> This is the {{tl|main other}} meta-template. This template helps other templates detect i...")
 
mNo edit summary
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Documentation subpage}}
{{Documentation subpage}}
<!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE -->
__NOTOC__


This is the {{tl|main other}} meta-template.
This is the {{tl|main other}} meta-template. This template helps other templates detect if they are on a main space (article) page or some "other" type of page.


This template helps other templates detect if they are on a main space (article) page or some "other" type of page.
=== Basic usage ===
 
===Basic usage===
This template usually takes two parameters, like this:
This template usually takes two parameters, like this:
: <code><nowiki>{{</nowiki>main other|''result if in mainspace''|''result if elsewhere''}}</code>
: {{tji|main other|result if in mainspace|result if elsewhere}}


If the template is on a main space (article) page, it will return this:
If the template is on a main space (article) page, it will return this:
: {{main other |demospace=main |''result if in mainspace'' |''result if elsewhere''}}
: {{main other|demospace=main|''result if in mainspace'' |''result if elsewhere''}}


If the template is on any other page, it will return this:
If the template is on any other page, it will return this:
: {{main other |''result if in mainspace'' |''result if elsewhere''}}
: {{main other|''result if in mainspace''|''result if elsewhere''}}


A typical usage case could be to make it so that a template only adds a category when on an article. Thus not adding other pages that just show the template. Like this:
A typical usage case could be to make it so that a template only adds a category when on an article. Thus not adding other pages that just show the template. Like this:
: <code><nowiki>{{</nowiki>main other|[[Category:Some article maintenance category]]}}</code>
: {{Pre|width=50%|{{{{fcb|#4169e1|main other}}|{{!((}}{{fcb|#2e8b57|Category}}:{{font color|#933|Some article maintenance category}}]]}} }}
Note that guidelines do not support categorization in templates.
Note that guidelines do not support categorization in templates.


Or to warn that a template should not be used on other pages:
Or to warn that a template should not be used on other pages:
: <code><nowiki>{{</nowiki>main other||This template should only be used in articles.}}</code>
: {{Pre|width=50%|{{{{fcb|#4169e1|main other}}||{{font color|#933|This template should only be used in articles.}}}} }}


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


===Demospace===
=== Demospace ===
For testing and demonstration purposes, this template can take a parameter named '''demospace'''.
For testing and demonstration purposes, this template can take a parameter named '''demospace'''.
* If it has the value '''main''' it returns the article text.
* If it has the value '''main''' it returns the article text.
Line 32: Line 30:


Like this:
Like this:
: <code><nowiki>{{</nowiki>main other|''result if in mainspace''|''result if elsewhere''|demospace{{=}}main}}</code>
{{Pre|width=25%|{{{{fcb|#4169e1|main other}}
  | {{font color|#933|result if in mainspace}}
  | {{font color|#933|result if elsewhere}}
  | {{fcb|#2e8b57|demospace}} = {{font color|#933|main}}
}} }}


No matter on what kind of page the code above is used, it will return: {{main other |''result if in mainspace'' |''result if elsewhere'' |demospace=main}}
No matter on what kind of page the code above is used, it will return: {{main other|''result if in mainspace''|''result if elsewhere''|demospace=main}}


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:
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:
: <code><nowiki>{{</nowiki>main other|''result if in mainspace''|''result if elsewhere''|demospace={{{demospace|}}}}}</code>


===Technical details===
{{Pre|width=25%|{{{{fcb|#4169e1|main other}}
  | {{font color|#933|result if in mainspace}}
  | {{font color|#933|result if elsewhere}}
  | {{fcb|#2e8b57|demospace}} = {{font color|#933|<nowiki>{{{demospace|}}}</nowiki>}}
}} }}
 
=== Technical details ===
This template detects article "Talk:" pages as type '''other'''.
This template detects article "Talk:" pages as type '''other'''.


<includeonly>{{Sandbox other|
== TemplateData ==
| <!-- CATEGORIES BELOW THIS LINE, PLEASE: -->
<templatedata>
[[Category:Namespace manipulation templates]]
{
"params": {
"1": {
"label": "If mainspace",
"description": "Content if page is located in mainspace (i.e. article space)",
"type": "content"
},
"2": {
"label": "If not mainspace",
"description": "Content if page is not located in mainspace",
"type": "content"
}
}
}
</templatedata>
 
 
<includeonly>{{sandbox other||{{testcases other||


}}</includeonly>
<!-- Categories below this line, please -->
[[Category:Utility templates]]
}}}}</includeonly>

Latest revision as of 01:47, 20 August 2023

Light bulb.png }}
It contains usage information, categories and other content that is not part of the original template page.


This is the {{main other}} meta-template. This template helps other templates detect if they are on a main space (article) page or some "other" type of page.

Basic usage

This template usually takes two parameters, like this:

{{main other|result if in mainspace|result if elsewhere}}

If the template is on a main space (article) page, it will return this:

result if in mainspace

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

result if elsewhere

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

{{main other|[[Category:Some article maintenance category]]}}

Note that guidelines do not support categorization in templates.

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

{{main other||This template should only be used in articles.}}

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

Demospace

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

  • If it has the value main it returns the article 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:

{{main other
  | result if in mainspace
  | result if elsewhere
  | demospace = main
}}

No matter on what kind of page the code above is used, it will return: result if in mainspace

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:

{{main other
  | result if in mainspace
  | result if elsewhere
  | demospace = {{{demospace|}}}
}}

Technical details

This template detects article "Talk:" pages as type other.

TemplateData

No description.

Template parameters

ParameterDescriptionTypeStatus
If mainspace1

Content if page is located in mainspace (i.e. article space)

Contentoptional
If not mainspace2

Content if page is not located in mainspace

Contentoptional