模板自动参数模式实现自动模板调用的一种机制,自动产生相关参数,模板的用户能够因此免于输入和记忆相关的参数,比如签名、当时日期、复杂的参数。
原因
有许多模板已广泛应用在非替换引用的方法下,这时模板的内部是不允许以替换引用方式嵌套调用其它模板或魔术字。这个模板就不能产生模板用户的签名或者使用时的日期等内容。
还有很多模板的参数过于复杂,输入相关的参数费时费劲。
可以把该模板的常用参数用另一个应用替换引用方式的模板来产生对前一模板的自动调用来解决上述问题,后一模板称为生成模板。
做法
关于模板{{X}}
,它的生成模板应当取名为{{X/auto}}
,命名统一有助于编辑者适应和掌握调用生成方法。
{{X/auto}}
请记得加入<noinclude>{{AutoTemplateDoc}}</noinclude>
在{{X}}
的<noinclude></noinclude>
部分加上说明“[[Help:模板自动参数模式|本模板支持自动生成]]
”。
在生成模板{{X/auto}}
中放入类似{{X|自動參數1|自動參數2|...}}
的代码,其中的自动参数根据{{X}}
的要求填写,如此就可以在页面中使用{{X/auto}}
的方式产生对{{X}}
的自动调用了。常用的自动参数可以参见魔术字。
自动参数代码范例
当时年月日
{{<includeonly>subst:</includeonly>CURRENTMONTHNAME}}
{{<includeonly>subst:</includeonly>CURRNETDAY}}日
签名
<includeonly>~</includeonly><includeonly>~~</includeonly>
--<includeonly>~~</includeonly><includeonly>~~</includeonly>
<includeonly>~~</includeonly><includeonly>~~~</includeonly>
案例
支持自动日期及签名
- Template:Substub:用
{{subst:Substub/auto}}
产生{{Substub|time={{subst:#time:c}}}}
。 - Template:Copyvio:用
{{subst:Copyvio/auto|url=来源}}
产生{{Copyvio|url=来源|sign=~~~~|date={{subst:#time:n月j日}}}}
。