巡查员
1,548
个编辑
MCBBS Wiki欢迎您共同参与编辑!在参与编辑之前请先阅读Wiki方针。
如果在编辑的过程中遇到了什么问题,可以去讨论板提问。
为了您能够无阻碍地参与编辑 未验证/绑定过邮箱的用户,请尽快绑定/验证。
MCBBS Wiki GitHub群组已上线!
您可以在回声洞中发表吐槽!
服务器状态监控。点击进入
本站由MCBBS用户自行搭建,与MCBBS及东银河系漫游指南(北京)科技有限公司没有从属关系。点此了解 MCBBS Wiki 不是什么>>
Sheep-realms(留言 | 贡献) 无编辑摘要 |
小 (// Edit via Wikiplus) |
||
| (未显示4个用户的18个中间版本) | |||
| 第1行: | 第1行: | ||
{{info|本页面引自[https://zh.moegirl.org/Help:模板 萌娘百科],最初来自[https://zh.wikipedia.org/wiki/Help:%E6%A8%A1%E6%9D%BF 中文维基],遵循CC BY SA 3.0协议,但后来有较大更改}} | |||
{{info|本页面引自[https://zh.moegirl.org/Help:模板]}} | |||
{{帮助文档难度/困难}} | {{帮助文档难度/困难}} | ||
{{浮动帮助菜单}} | {{浮动帮助菜单}} | ||
'''模板'''在维基系统(MediaWiki)中是一个可以加入另一个页面的页面。这一加入过程叫做嵌入,就好像计算机语言中的子程序。 | '''模板'''在维基系统(MediaWiki)中是一个可以加入另一个页面的页面。这一加入过程叫做嵌入,就好像计算机语言中的子程序。 | ||
本文提供维基百科模板的使用手册和指南。<!--,另外, | |||
*模板简介在[[帮助:模板入门]]; | *模板简介在[[帮助:模板入门]]; | ||
*模板分类在[[:分类:页面模板]]; | *模板分类在[[:分类:页面模板]]; | ||
*模板名字空间的帮助信息在[[ | *模板名字空间的帮助信息在[[帮助:名字空间#“模板”名字空间|帮助:名字空间]];--> | ||
==概述== | ==概述== | ||
'''模板名字空间'''是以“'''Template:'''”开头的名字空间,这个前缀是跨语言的,也就是说<code>模板:</code>和<code>Template:</code> | '''模板名字空间'''是以“'''Template:'''”开头的名字空间,这个前缀是跨语言的,也就是说<code>模板:</code>和<code>Template:</code>这两个前缀是等价的。 | ||
在此名字空间的页面称为'''模板''',此页面的内容是用来通过嵌入技术加入到其他页面中,从而创建复杂的文档。 | |||
将名为“Template:模板名”的模板加入页面中的语法是<code><nowiki>{{模板名}}</nowiki></code>,这个叫做'''模板标签'''。 | 将名为“Template:模板名”的模板加入页面中的语法是<code><nowiki>{{模板名}}</nowiki></code>,这个叫做'''模板标签'''。 | ||
| 第28行: | 第25行: | ||
如果一个页面不是以“Template:”开头,则不属于模板,但也可以使用模板标签。 | 如果一个页面不是以“Template:”开头,则不属于模板,但也可以使用模板标签。 | ||
:例如<code><nowiki>{{帮助: | :例如<code><nowiki>{{帮助:名字空间}}</nowiki></code>会将[[帮助:名字空间]]中的内容加入到该页来。 | ||
这样一来,'''所有页面都可以当作是模板'''。但是,使用在模板名字空间的页面(即真正的模板)有以下独特的好处: | 这样一来,'''所有页面都可以当作是模板'''。但是,使用在模板名字空间的页面(即真正的模板)有以下独特的好处: | ||
#所有被页面使用的模板都在页面编辑页显示出来。 | # 所有被页面使用的模板都在页面编辑页显示出来。 | ||
#当模板改变时,所有使用模板页面的服务器缓存(相对于浏览器缓存)自动被清空;而位于其他名字空间的页面,服务器缓存往往要手工清空。 | # 当模板改变时,所有使用模板页面的服务器缓存(相对于浏览器缓存)自动被清空;而位于其他名字空间的页面,服务器缓存往往要手工清空。 | ||
而模板名字空间以外的页面一般在如下情况下作为模板使用: | 而模板名字空间以外的页面一般在如下情况下作为模板使用: | ||
#引用维基百科名字空间的界面消息。 | # 引用维基百科名字空间的界面消息。 | ||
#将长页面(这里假设名字就叫做<code>长页面</code>)拆分为较短页面时,可以将短页面命名为<code>长页面/第一部分</code>、<code>长页面/第二部分</code>等,然后使用<code><nowiki>{{/第一部分}}<br/>{{/第二部分}}</nowiki></code>来拼成长页面。 | # 将长页面(这里假设名字就叫做<code>长页面</code>)拆分为较短页面时,可以将短页面命名为<code>长页面/第一部分</code>、<code>长页面/第二部分</code>等,然后使用<code><nowiki>{{/第一部分}}<br/>{{/第二部分}}</nowiki></code>来拼成长页面。 | ||
---- | ---- | ||
一个模板可以调用另一个模板,它也可以调用它自己(递归调用),但'''只有一层自我调用有效'''。 | 一个模板可以调用另一个模板,它也可以调用它自己(递归调用),但'''只有一层自我调用有效'''。 | ||
| 第127行: | 第124行: | ||
====命名参数的优点==== | ====命名参数的优点==== | ||
*参数的顺序可以变化,模板的参数可以任意添加和修改,而不会对调用模板的页面产生致命影响。< | *参数的顺序可以变化,模板的参数可以任意添加和修改,而不会对调用模板的页面产生致命影响。<s>然而一部分强迫症编辑者仍然会努力去统一模板的命名参数的顺序,以至于被认为浪费服务器空间和被怀疑刷编辑数。</s> | ||
*参数的意义容易理解。 | *参数的意义容易理解。 | ||
*匿名参数不可以直接使用HTML元素属性。 | *匿名参数不可以直接使用HTML元素属性。 | ||
*模板的同一次使用中,允许对同一个变量进行多次赋值,但是最后一个值会被使用 | |||
**有些special techniques会利用这点 | |||
**但这意味着至少要有一个命名参数 | |||
====命名参数和匿名参数混合使用==== | ====命名参数和匿名参数混合使用==== | ||
| 第154行: | 第153行: | ||
然后在模板内容中调用了名为“1”、“2”、“3”的三个参数。因此得到如上结果。}} | 然后在模板内容中调用了名为“1”、“2”、“3”的三个参数。因此得到如上结果。}} | ||
''' | '''实际情况中请不要使用上述例子中的写法,无论是将参数名命名为数字,还是多次赋值,都是十分不安全的行为,因为这样可读性极差且容易出错。''' | ||
===未赋值并且没有默认值的参数=== | ===未赋值并且没有默认值的参数=== | ||
| 第212行: | 第211行: | ||
<nowiki>34{{{02}}}</nowiki> | <nowiki>34{{{02}}}</nowiki> | ||
'''注意:'''维基系统名字空间的参数名是不同的,它们是<code><nowiki>$1, $2, ...</nowiki></code>,参见 | '''注意:'''维基系统名字空间的参数名是不同的,它们是<code><nowiki>$1, $2, ...</nowiki></code>,参见[http://meta.wikimedia.org/wiki/Meta-Wikimedia:MediaWiki_namespace_text 英文维基系统名字空间文本帮助]。 | ||
==模板页== | ==模板页== | ||
| 第255行: | 第254行: | ||
===模板分类=== | ===模板分类=== | ||
模板也要进行分类,目的是为了更好的整理模板,以便更好的使用和管理模板。模板的分类同条目的分类相似,可以参阅有关条目分类的帮助文件。不同之处在于对于模板的分类需要使用<code><nowiki><noinclude></nowiki></code>标识,如果不加<code><nowiki><noinclude></nowiki></code>标识,则不仅模板被分类,所有使用该模板的条目也被分入同一类。 | |||
所有模板的根目录(即分类)是[[:Category:页面模板]]。所有模板分类名最后一定要含有“模板”二字,以区别于普通条目的分类。 | 所有模板的根目录(即分类)是[[:Category:页面模板]]。所有模板分类名最后一定要含有“模板”二字,以区别于普通条目的分类。 | ||
| 第263行: | 第262行: | ||
将例1中的模板<code><nowiki>[[Template:姓名]]</nowiki></code>分为<code><nowiki>[[:Category:人物模板]]</nowiki></code>,需要加入: | 将例1中的模板<code><nowiki>[[Template:姓名]]</nowiki></code>分为<code><nowiki>[[:Category:人物模板]]</nowiki></code>,需要加入: | ||
<nowiki>我是{{{姓}}}{{{名}}}。<noinclude>[[Category:人物模板]]</nocinlude></nowiki> | <nowiki>我是{{{姓}}}{{{名}}}。<noinclude>[[Category:人物模板]]</nocinlude></nowiki> | ||
===标识=== | ===标识=== | ||
| 第287行: | 第285行: | ||
====<nowiki>subst</nowiki>与<nowiki>safesubst</nowiki>==== | ====<nowiki>subst</nowiki>与<nowiki>safesubst</nowiki>==== | ||
'''subst'''和'''safesubst'''的用法是:<code><nowiki>{{subst:模板名}}</nowiki></code>或<code><nowiki>{{safesubst:模板名}}</nowiki></code>。它的作用是'''直接'''或'''间接''' | '''subst'''和'''safesubst'''的用法是:<code><nowiki>{{subst:模板名}}</nowiki></code>或<code><nowiki>{{safesubst:模板名}}</nowiki></code>。它的作用是'''直接'''或'''间接'''地一次性将模板内容编译成维基文档,加入到页面中去,而不是每次显示页面的时候调用有关模板。这样可以按模板当前的形式编辑条目,并使条目免受模板变化的影响,并减轻服务器负担。 | ||
<code><nowiki>{{subst:模板名}}和{{safesubst:模板名}}</nowiki></code>只会将模板展开<b>一层</b>。如果需要彻底的展开的话,请访问[[特殊:展开模板]]进行手动展开。(该特殊页面会把所有两对大括号内的内容全部展开,包括<nowiki>{{BASEPAGENAME}}</nowiki>这类的系统变量) | |||
{{clear}} | {{clear}} | ||
| 第296行: | 第297行: | ||
模板的一般用法有: | 模板的一般用法有: | ||
*[[:Category:提示模板|提示模板]],例如: | * [[:Category:提示模板|提示模板]],例如:{{tl|不完整}}传递“不完整”的消息。 | ||
*[[:Category:导航模板|导航模板]]和[[:Category:大家族模板|大家族模板]],用于给读者提供类似的条目,例如: | * [[:Category:导航模板|导航模板]]和[[:Category:大家族模板|大家族模板]],用于给读者提供类似的条目,例如:{{tl|MCBBS论坛用户}}。 | ||
*[[:Category:信息模板|信息模板]] | * [[:Category:信息模板|信息模板]],用于同一类条目中提供统一格式的信息,例如:{{tl|PersonInfoBox}}在条目右边绘制信息框,提供用户的相关信息。 | ||
* | * 使用趣味模板增加页面趣味性,如{{tl|一本道}}。 | ||
* | * 便利页面的编辑,使编辑者更方便,如{{tl|ref}}。 | ||
* | * 提供跨语言文本。 | ||
* 以上几种的组合。 | |||
==参见== | ==参见== | ||
*[[mw:Help:Templates/zh|Mediawiki:帮助:模板]] | *[[mw:Help:Templates/zh|Mediawiki:帮助:模板]] | ||
[[分类:编辑帮助]] | |||
[[分类: | [[分类:引用萌娘百科的页面]] | ||