Difference between revisions of "Template:IncludeAt"
m (add comment) |
m (+Project) |
||
Line 12: | Line 12: | ||
//chk:User if "user" is defined | //chk:User if "user" is defined | ||
-->| 2{{#ifeq:{{{user}}}|{{{user|}}}||NULL}}= {{{user}}}<!-- | -->| 2{{#ifeq:{{{user}}}|{{{user|}}}||NULL}}= {{{user}}}<!-- | ||
− | //chk:Project: not included, add when req'd | + | //chk:Project if "project" is defined |
+ | -->| 4{{#ifeq:{{{project}}}|{{{project|}}}||NULL}}= {{{user}}}<!-- | ||
+ | //chk:File: not included, add when req'd | ||
//chk:MediaWiki: not included, add when req'd | //chk:MediaWiki: not included, add when req'd | ||
//chk:Template if "template" is defined | //chk:Template if "template" is defined |
Revision as of 22:06, 2 March 2020
Contents
Syntax
{{IncludeAt |anytalk= |main= |user= |project= |template= |help= |category= |pagename= |page= |pagename2= |page2= |pagename3= |page3= |other= |noinclude= |demospaceid= }}
Delete unused parameters; the template sensitive to whether a parameter is defined.
Behaviour
parameters
If a parameter is defined(even if it is null or whitespaces), the template will attempt to match its case.
If a parameter is not defined, then the template will ignore that case when matching; it will usually be encompassed by the parameter other
instead.
Here are some selected behaviors of IncludeAt:
Code | Result in main namespace | Result in template namespace | Comment |
---|---|---|---|
<code>{{IncludeAt
|
main namespace
|
other namespaces
|
The template parameter is not defined, so IncludeAt disregard it during check. Only main namespace cases are checked and template namespace cases are caught by the other parameter.
|
<code>{{IncludeAt
|
main namespace
|
template namespace
|
The two cases here are both defined. IncludeAt checks and provide results in both cases. |
<code>{{IncludeAt
|
main namespace
|
(empty result)
|
Notice that both cases here are still defined: the template parameter is present but the value is an empty string. IncludeAt checks and provide results in both cases, and for template namespace cases, it faithfully reproduces the empty string.
|
<code>{{IncludeAt
|
main namespace
|
(empty result)
|
IncludeAt do not mangle with the other parameter (the default case); even if it wasn't explicitly defined, it will still catch all unmatched cases. The default value of other is an empty string.
|
<code>{{IncludeAt}}</code>
|
(empty result)
|
(empty result)
|
An IncludeAt with no defined parameters. The other parameter will always be outputted and its default is an empty string.
|
When a parameter is deemed undefined, the template adds NULL
or NULLPAGENEVERCHECK
to the comparison argument to prevent matches. This means that, in theory, if the template is placed on a page with a name like {{{pagename}}}NULLPAGENEVERCHECK
, the template will misbehave.
demospaceid
demospaceid
should be a positive integer. If it is not a number (including nonexistent), the template falls back on using the namspace number of the page it is located on; if it is a number but not an integer, the decimals are truncated by the template. You may use the magicword {{NAMESPACENUMBER:(the page you want to emulate)}}
or refer to the MediaWiki Manual to obtain the namespace number you need.