Help:模板:修订间差异

帮助页面
添加的内容 删除的内容
→‎参见:​ // Edit via Wikiplus
 

(未显示3个用户的11个中间版本)

第1行: 第1行:
{{NoteTA|G1=IT|G2=MediaWiki}}
{{NoteTA|G1=IT|G2=MediaWiki}}
{{mbox|text=本页是关于模板用法的帮助页面。关于求闻百科对模板的使用标准,请参见[[Qiuwen:格式手册/模板]]。}}
{{about|关于模板用法的帮助页面|求闻百科对模板的使用标准|Qiuwen:格式手册/模板}}
{{操作指南|H:T}}
{{Namespaces}}

'''模板'''({{lang-en|Template}})是MediaWiki软件自带的一项功能,用于在多个页面显示相同的内容。所有的模板页面都位于“模板”[[Help:命名空间|命名空间]]下。在条目页面,你往往会看到一些消息框,以及页面右上角关于条目基本信息(如对于人物,有出生地、国籍等)的信息框,底部还会有导航框,这些都是利用了模板的功能。
'''模板'''({{lang-en|Template}})是MediaWiki软件自带的一项功能,用于在多个页面显示相同的内容。所有的模板页面都位于“模板”[[Help:命名空间|命名空间]]下。在条目页面,你往往会看到一些消息框,以及页面右上角关于条目基本信息(如对于人物,有出生地、国籍等)的信息框,底部还会有导航框,这些都是利用了模板的功能。


模板的优点在于易于维护。当模板的内容改变之后,嵌入了该模板的页面中的相应内容也将改变,不需要编辑这些页面。
模板的优点在于易于维护。当模板的内容改变之后,嵌入了该模板的页面中的相应内容也将改变,不需要编辑这些页面。


维基文本中,嵌入一个模板的基本语法是{{tlx|-{}-模板名称|参数}}。参数可以有多个,也可以没有。模板名称就是模板页面的名称,通常不含命名空间。例如。{{tlc|colorbox|green}}调用的模板页面就是[[Template:Colorbox]]。
wikitext中,嵌入一个模板的基本语法是{{tlx|-{}-模板名称|参数}}。参数可以有多个,也可以没有。模板名称就是模板页面的名称,通常不含命名空间。例如。{{tlc|colorbox|green}}调用的模板页面就是[[Template:Colorbox]]。


你可以在{{fullurl|Special:所有页面|namespace=10|hideredirects=1|此页面}}查看本站的所有模板。
你可以在{{fullurl|Special:所有页面|namespace=10|hideredirects=1|此页面}}查看本站的所有模板。
第180行: 第183行:
需要注意的是,不提供值与提供空值是不同的。例如,{{tlx|-{}-欢迎|username=User114514|sitename=}}将直接产生“User114514,您好,欢迎来到!”。
需要注意的是,不提供值与提供空值是不同的。例如,{{tlx|-{}-欢迎|username=User114514|sitename=}}将直接产生“User114514,您好,欢迎来到!”。


另外,参数的默认值也可以设为空字符串,然后使用[[Help:解析器函数|解析器函数]]进行处理。这里,将“欢迎”模板再进行一些增强:如果username没有指定,或者为空,则不显示username,“您好”一词之前也没有显示逗号;如果sitename没有指定,或者为空,则显示为“滚动的天空Wiki”。代码如下:
另外,参数的默认值也可以设为空字符串,然后使用[[Help:解析器函数|解析器函数]]进行处理。这里,将“欢迎”模板再进行一些增强:如果username没有指定,或者为空,则不显示username,“您好”一词之前也没有显示逗号;如果sitename没有指定,或者为空,则显示为“求闻百科”。代码如下:
<pre>-{}-
<pre>-{}-
{{#if:{{{username|}}}|{{{username}}},}}您好,欢迎来到{{#if:{{{sitename|}}}|{{{sitename}}}|求闻百科}}!
{{#if:{{{username|}}}|{{{username}}},}}您好,欢迎来到{{#if:{{{sitename|}}}|{{{sitename}}}|求闻百科}}!
第208行: 第211行:
}}
}}


模板默认值可以用来达到参数'''别称(alias)'''的效果。例如,{{nowiki|(((username!(((用户名!(((用戶名!(((使用者名稱!))))))))))))}}。但是,一般不建议使用参数别称。
模板默认值可以用来达到参数'''别称'''({{lang-en|alias}})的效果。例如,{{nowiki|(((username!(((用户名!(((用戶名!(((使用者名稱!))))))))))))}}。但是,一般不建议使用参数别称。


== 替换引用 ==
== 替换引用 ==
{{main|Help:替换引用}}
{{main|Help:替换引用}}
替换引用是指保存页面时,那么使用该模板的页面被保存时,相关代码就会被替换为模板的内容。替换引用有三种形式:
替换引用是指使用该模板的页面被保存时,相关代码就会被替换为模板的内容。替换引用有三种形式:


* subst:页面被保存时,调用模板的代码将被一次性替换为保存时的模板内容,这些内容将成为页面的一部分,可以像一般内容一样被编辑,与原来的内容分开。如果此后原模板页面被更改,被替换后的内容将不受影响。
* subst:页面被保存时,调用模板的代码将被一次性替换为保存时的模板内容,这些内容将成为页面的一部分,可以像一般内容一样被编辑,与原来的内容分开。如果此后原模板页面被更改,被替换后的内容将不受影响。
第219行: 第222行:


== 嵌入包含 ==
== 嵌入包含 ==
'''嵌入包含(transclusion)'''是指在页面中显示另一个页面(通常是模板)的内容。假如,A页面中有代码{{tlx|B}},则页面“A”嵌入包含了“Template:B”,页面A称为目标页,页面B称为来源页。
'''嵌入包含'''({{lang-en|transclusion}}),简称'''嵌入''',是指在页面中显示另一个页面(通常是模板)的内容。假如,A页面中有代码{{tlx|B}},则页面“A”嵌入包含了“Template:B”,页面A称为目标页,页面B称为来源页。


{{mbox|text=部分特殊页面也可以被嵌入包含,甚至可以传入参数,但是不能被替换引用。}}
{{mbox|text=部分特殊页面也可以被嵌入包含,甚至可以传入参数,但是不能被替换引用。}}


=== 控制被嵌入包含的部分 ===
=== 控制被嵌入包含的部分 ===
{{nowiki|<tag:noinclude>}}、{{nowiki|<tag:includeonly>}}和{{nowiki|<tag:onlyinclude>}}可以用来控制哪些内容被嵌入包含。
被嵌入包含的页面中,{{nowiki|<tag:noinclude>}}、{{nowiki|<tag:includeonly>}}和{{nowiki|<tag:onlyinclude>}}可以用来控制哪些内容需要被嵌入包含。


* {{tag|noinclude}}内的部分,在源页面自身会显示,但是在目标页面嵌入包含时不会显示。
* {{tag|noinclude}}内的部分,在源页面自身会显示,但是在目标页面嵌入时不会显示。
* {{tag|includeonly}}内的部分,在源页面自身不会显示,但是在目标页面嵌入包含时会显示。
* {{tag|includeonly}}内的部分,在源页面自身不会显示,但是在目标页面嵌入时会显示。
* {{tag|onlyinclude}}若存在,则该标签以外的部分在目标页面嵌入包含时都不会显示。
* {{tag|onlyinclude}}若存在,则该标签以外的部分在目标页面嵌入时都不会显示。


这里举个例子(假设模板名称为hw):
这里举个例子(假设模板名称为hw):
第250行: 第253行:
|}
|}


控制嵌入包含内容的最典型的例子就是模板文档。模板代码中,往往会出现{{tag|noinclude|content=<nowiki>{{doc}}</nowiki>|highlight=1}},这样在模板页面自身会出现模板文档,但是其他页面嵌入该模板时,不会将整个文档嵌入包含进去。类似的,文档中的模板[[Help:分类|分类]]链接也会被{{tag|includeonly|highlight=1}}包含,这样文档自身不会加入分类,但当模板嵌入包含该文档时,则会将模板加入这些分类。
{{mbox|text=
你应该会注意到,模板在嵌入包含文档时会充分利用此代码。模板代码中,往往会出现{{tag|noinclude|content=<nowiki>{{doc}}</nowiki>|highlight=1}},这样在模板页面自身会出现模板文档,但是嵌入包含该模板时,不会将整个文档嵌入包含进去。类似的,文档中的模板[[Help:分类|分类]]链接也会被{{tag|includeonly|highlight=1}}包含,这样文档自身不会加入分类,但当模板嵌入包含该文档时,则会将模板加入这些分类。
}}


== 参见 ==
== 参见 ==
* [[:Category:模板|Category:模板]]
* [[Help:模板消息]]
* [[mw:Special:MyLanguage/Help:Templates|MediaWiki上的模板帮助页面]]
* [[mw:Special:MyLanguage/Help:Templates|MediaWiki上的模板帮助页面]]
* [[mw:Special:MyLanguage/Help:Transclusion|MediaWiki上的嵌入包含帮助页面]]
* [[mw:Special:MyLanguage/Help:Transclusion|MediaWiki上的嵌入包含帮助页面]]


{{帮助页面}}
{{帮助页面}}

[[Category:求闻百科帮助]]
[[Category:帮助文档]]