Help:模板文档页模式

This page is a translated version of the page Help:Template documentation and the translation is 100% complete.
MediaWiki手册:内容读者编辑者管理人员系统管理员研究员 +/-

这是关于模板文档页模式的帮助页面。 一般的模板帮助可参阅Help:模板

记录模板用来做什么有很多不同的方法:

  1. 在某些情况下,模板的内容十分明白易懂,不需要额外的规定说明。
  2. 可以在<noinclude>...</noinclude>标签里说明。
    此方法允许将模板添加到一个模板分类之类的行为。
  3. 详细的文档可以放在模板讨论页面。
    此方法通常与模板页面的noinclude策略同时使用,noinclude中可添加到讨论页的参考链接,可能附带一个摘要。

在模板页面

模板页面的include部分定义了模板被嵌入或替换引用时的工作方式,非includeonly部分生成页面本身。

一般一个模板页面可能包含:

<includeonly><!--模板名称-->
定义内容,可能是包含该模板的分类页面的标签</includeonly><noinclude>
<nowiki><translate nowrap><!--T:14--> definition content, possibly formatted, annotated, summarized</translate></nowiki>

说明、示例以及模板分类的标签(使用排序关键字{{PAGENAME}})
</noinclude>

注释标签中的模板名称在替换引用时会很有用。

例如对于Template:T

<includeonly>start-{{{1|pqr}}}-end</includeonly><noinclude>
<nowiki>start-{{{1|pqr}}}-end</nowiki>
[[Category:Demo template]]
</noinclude>

替换引用后将呈现:

start-{{{1|pqr}}}-end

而对于没有添加标签的部分,与内容有关的信息将不会显示:

start-pqr-end

反过来,在呈现时不会丢失信息的定义内容部分(特别是纯文本)不会放入任何类型的标签中,因此不必重复:

start-<includeonly>{{{1|pqr}}}</includeonly><noinclude>
<nowiki>{{{1|pqr}}}</nowiki>
[[Category:Demo template]]
</noinclude>-end

同样会呈现:

start-{{{1|pqr}}}-end

应用无参数的替换引用会将其变为wikitext。可以通过依次添加nowiki标签来原样显示。

表格

如果模板生成一个表格,模板页面展示表格结构而不是编写的wikitext就会大有裨益。为此,表格语法不应放入任何类型的标签,每个表格元素在必要的地方都会有noinclude和includeonly部分。

呈现

正如上面所展示的,定义内容的直接呈现中,参数具有默认值的情况下信息丢失了:只有值被呈现出来了。其他会丢失信息的情况包括:

  • 对带有参数的表达式应用#expr将抛出“表达式错误:无法识别的标点“{””。
  • 变量以其值呈现。

参数默认机制也可用来记录参数通常做些什么:

  • 未被定义的{{{1}}}会呈现为{{{1}}},清楚表明模板期望获得第一个参数。
  • 未被定义的{{{1|}}}没有显示任何内容,这可能是期望的效果,但对于自记录模板没有任何帮助。
  • 也许可以注明预期参数的功能,例如{{{1|image}}}用于处理图像事务的模板。

一般在noinclude部分的示例包含或替换引用该模板。注意处理中模板的更改(如在noinclude部分之外的更改)不会在预览时或替换引用下的“查看更改”中在这些示例上起作用。

分类

某些模板用于将页面添加至给定的分类。有时模板页面本身也刚好在该分类中。一般来说这不是什么问题。想让模板将页面添加至分类可以使用:

……代码末尾<includeonly>[[Category:目标分类]]
</includeonly><noinclude>
文档和/或讨论页链接
[[Category:模板分类|{{PAGENAME}}]]
</noinclude>

这里的目标分类指的是使用模板的页面的分类,模板分类指的是相似模板的分类。 此方法也可用于模板中的跨语言链接。

在某些模板发现的小改进:将[[Category:target]]替换为[[Category:target]]。 通常虚拟参数{{{category}}}未被定义(未被使用),模板会依旧将页面添加到目标分类。 设置category=(空值)将允许在模板列表上禁用此功能。 否则带有示例的模板列表将会被添加到被示例解释的各种目标模板分类中。

示例

展开示例模板就是一个很好的示例。

如果模板包含变量,其值可以被参数值覆盖将会大有好处,为了演示不同值的效果,请使用例子:

  • {{{namespace|{{NAMESPACE}}}}}
  • {{{pagename|{{PAGENAME}}}}}
  • {{{currentdow|{{CURRENTDOW}}}}}

这尤其适用于根据变量值进行分支的情况。

参见

Links to other help pages

Help contents
Meta · Wikinews · Wikipedia · Wikiquote · Wiktionary · Commons: · Wikidata · MediaWiki · Wikibooks · Wikisource · MediaWiki: Manual · Google
Versions of this help page (for other languages see further)
What links here on Meta or from Meta · Wikipedia · MediaWiki
Reading
Go · Search · Namespace · Page name · Section · Backlinks · Redirect · Category · Image page · Special pages · Printable version
Tracking changes
Recent changes (enhanced) | Related changes · Watching pages · Diff · Page history · Edit summary · User contributions · Minor edit · Patrolled edit
Logging in and preferences
Logging in · Preferences
Editing
Starting a new page · Advanced editing · Editing FAQ · Export · Import · Shortcuts · Edit conflict · Page size
Referencing
Links · URL · Piped links · Interwiki linking · Footnotes
Style and formatting
Wikitext examples · CSS · Reference card · HTML in wikitext · Formula · Lists · Table · Sorting · Colors · Images and file uploads
Fixing mistakes
Show preview · Reverting edits
Advanced functioning
Expansion · Template · Advanced templates · Parser function · Parameter default · Magic words · System message · Substitution · Array · Calculation · Transclusion
Others
Special characters · Renaming (moving) a page · Preparing a page for translation · Talk page · Signatures · Sandbox · Legal issues for editors