模板是可以反复调用的部件,方便相似的内容在不同的页面以简单的方式进行调用。模板是一种以“Template”为命名空间的页面,可以像创建任何其他页面一样创建它们。
例如当前有一个模板,它的完整名称为Template:欢迎
,内容为:
欢迎来到Utcwiki!
在另一个页面中,源代码为:
您好,{{欢迎}}
那么这个页面将被渲染为:
您好,欢迎来到Utcwiki!
如上所示,使用{{模板名称}}(不需要Template:
前缀)即可调用该模板。
有时候可能会对每个页面存在一些差异化需求,需要对模板的内容进行单独修改,这时候可以使用赋值模板。
例如当前有一个模板,它的完整名称为Template:欢迎2
,内容为:
欢迎来到{{{1}}}!
在另一个页面中,源代码为:
您好,{{欢迎2|Undertale}}
那么这个页面将被渲染为:
您好,欢迎来到Undertale!
如上所示,{{{1}}}作为模板内的参数被使用,以{{模板名称|参数内容}}的语法进行调用,使用数字作为参数名,这个参数会被称为匿名参数。
例如当前有一个模板,它的完整名称为Template:欢迎3
,内容为:
欢迎来到{{{名称}}}!
在另一个页面中,源代码为:
您好,{{欢迎3|名称=undertale}}
那么这个页面将被渲染为:
您好,欢迎来到Undertale!
如上所示,{{{名称}}}作为模板内的参数被使用,以{{模板名称|参数名=参数内容}}的语法进行调用,使用名称作为参数名,这个参数会被称为命名参数。
在模板中使用命名参数的优点是,除了参数顺序灵活,还可以使模板代码更容易理解。
模板还有更多的调用方法:
- {{模板名称}}:这种调用方式将动态地更改并实时显示
[[Template:模板名称]]
的内容。 - {{subst:模板名称}}:这种调用方式将把自身一次性替换为页面被保存时
[[Template:模板名称]]
的内容:模板的内容成为包含的页面的一部分,可以被单独编辑,与原来的内容分开。 - {{msgnw:模板名称}}:这种调用方式将模板的源代码包含在页面中,类似<nowiki>一样。
- {{safesubst:模板名称}}:若{{subst:模板名称}}的调用形式因故失败时,此时该模板会处于未解析状态,从而直接显示为{{subst:模板名称}},从而导致模板无法正常使用。那么可以使用{{safesubst:模板名称}}的调用形式,它将会在{{subst:模板名称}}的调用形式出现错误时将自身替换为{{模板名称}},也就是普通的模板调用形式,使得模板可以保持正常使用。
关于模板的更多语法,见此。