今天是2024年11月22日 第47周 星期五

代人,时大变了。

我们生活在大地上,但我们的梦想超越天空。

“Template:IncludeAt”的版本间的差异

来自Akarin
跳到导航 跳到搜索
enmgp>公的驱逐舰
(Incorrect ID value)
enmgp>公的驱逐舰
(Use variable to allow demospaceid function)
第2行: 第2行:
 
    if noinclude=true, disable entirely
 
    if noinclude=true, disable entirely
 
-->{{{noinclude|}}}|true||<!--
 
-->{{{noinclude|}}}|true||<!--
 +
   Stroe NAMESPACENUMBER. if demospaceid exists, use demospaceid instead
 +
-->{{#vardefine:id|{{#if:{{{demospaceid|}}}|{{{demospaceid}}}|{{NAMESPACE}}}}<!--
 
    check for namespace. use ID to reduce ambiguity.
 
    check for namespace. use ID to reduce ambiguity.
 
    chk:ANY Talk page
 
    chk:ANY Talk page
-->{{#ifeq:{{#expr:{{NAMESPACENUMBER}}mod2}}|1|{{{anytalk|}}}|<!--
+
-->{{#ifeq:{{#expr:{{#var:id}}mod2}}|1|{{{anytalk|}}}|<!--
-->{{#switch:{{NAMESPACENUMBER}}<!--
+
-->{{#switch:{{#var:id}}<!--
 
    chk:(MAIN)
 
    chk:(MAIN)
 
-->| 0 = {{{main|}}}<!--
 
-->| 0 = {{{main|}}}<!--

2019年8月28日 (三) 11:34的版本

50px 模板文档[查看] [编辑] [历史] [清除缓存]

Template Data

Meta template for including different information according to the namespace or the page they are included in. Common usage includes category management (e.g. do not include document page (where examples are given) into categories).

模板参数

此模板首选参数换行格式。

参数说明类型状态
Anytalkanytalk

Information to be included at any talkpage.

字符串可选
Mainmain

Information to be included at (main) namespaces.

字符串可选
Useruser

Information to be included at User namespaces.

字符串可选
Projectproject

Information to be included at Project namespaces.

字符串可选
Filefile

无描述

未知可选
Mediawikimediawiki

无描述

未知可选
Templatetemplate

Information to be included at Template namespaces.

字符串可选
Helphelp

Information to be included at Help namespaces.

字符串可选
Categorycategory

Information to be included at Category namespaces.

字符串可选
Pagenamepagename

The FULL name of a page.

字符串可选
Pagepage

Information to be included at "pagename".

字符串可选
Pagename2pagename2

The FULL name of a page.

字符串可选
Page2page2

Information to be included at "pagename2".

字符串可选
Pagename3pagename3

The FULL name of a page.

字符串可选
Page3page3

Information to be included at "pagename3".

字符串可选
Otherother

Information to be included at any pages not matching any defined selections.

字符串推荐
Don't includenoinclude

If this argument is "true" (the word ONLY, case insensitive), then nothing will be included, even if rules are met.

字符串可选
Demonstration Namespace IDdemospaceid

The ID of a namespace for demonstration. This "fake" ID will replace the actual namespace ID of the page the template is located on, leading it to act as if it is placed at the specified namespace.

数值可选

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=main namespace
|other=other namespaces
}}</code>
true

true

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=main namespace
|template=template namespace
|other=other namespaces
}}</code>
true

true

The two cases here are both defined. IncludeAt checks and provide results in both cases.
<code>{{IncludeAt
|main=main namespace
|template=
|other=other namespaces
}}</code>
true

true

(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=main namespace}}</code>
true

true

(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> true

(empty result)

true

(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.