模板简介

模板其实也是一种标准wiki页面(创建和编辑方式相同),但它主要是用于嵌入到其它页面中方便规模化定制使用的公用内容。模板的页面名称最前面都有模板:Template:
模板在维基系统(MediaWiki)中是一个可以加入另一个页面的页面,这一加入过程叫做嵌入,就好像计算机语言中的子程序。模板也可以使用参数。在某个条目中的模板里使用参数,那么这些参数就会随该模板在该条目中显示出来。注意:改变某一条目中模板的参数只会影响该条目,而不会影响到其它调用该模板的条目。调用格式为:{{模板名|参数1|参数2}}
模板是在命名空间“模板”(Template)下的页面,即任何以“Template:”开头的页面。注意,这里的开头必须是英文单词“Template”(也可以是“template:”,尽量统一标准采用首字母大写的方式,避免实际运行中出错。另外,在中文语言环境下,“Template:”会自动转换成“模板:”,但在创建的时候最好还是以英文开头避免出错),之后跟一个半角的冒号(:),而不能只用“模板”二字。例如要定义一个叫做“我的模板”的模板,名字就应该是[[Template:我的模板]],编辑这个页面,就可以改变“我的模板”的内容和样式。如果要将该模板加入一个页面中,就可以通过加入{{我的模板}}来实现。
模板可以用来统一各页面重复部分的格式,增加提示消息,添加浏览边框,以及提供可跨语言的文字描述。
你可以像新建一个普通页面一样新建一个模板,唯一的区别就是模板页面必须是以Template:开头来建立(例如:Template:我的模板)。创建完毕后,你就可以通过添加{{我的模板}}来使用它。所有使用该模板的页面都相当于增加了模板页面里的内容,当模板被修改以后,那些使用模板的页面也自动更新。新建模板后,请在模板消息内添加新建模板的信息,并请对模板进行分类。
另外,你也可以使用{{subst:我的模板}},这样系统就将模板的内容一次性加入页面中,而不是只加入一个使用模板的标识(像{{我的模板}}这样)。这就使页面的内容固定了下来,以后再有人修改“我的模板”,页面的内容就不会相应地改变了。
如果在某个页面中,你发现使用了模板{{某模板}},要修改它,你就要去“Template:某模板”页面中进行编辑。你也可以在搜索框中输入“Template:某模板”找到它,之后就同修改普通页面一样。但是在修改的时候,一定要注意,因为修改可能影响很多使用了该模板的页面。

简而言之,在MediaWiki中,模板是可以包含在其他页面中的预先格式化的文本片段。从技术上讲,模板是Template命名空间中的页面,因此可以使用与常规页面相同的编辑器来创建和编辑它们。这是一种特殊的语法,用于包含模板并通过模板向MediaWiki解析器传递参数。

为什么模板在MediaWiki中很重要?

模板在MediaWiki中之所以很重要,是因为它们允许用户轻松地将相同的内容或格式插入到多个页面中。这有助于在整个站中保持一致的外观,并使用户更容易添加和编辑内容。此外,模板可以帮助减少重复工作,因为对模板的更改会自动反映在使用该模板的所有页面上。这可以节省时间并更轻松地管理大型维基站点的内容。

MediaWiki模板的常见用法有哪些?

MediaWiki 模板通常用于多种目的,包括:

  • 为文档和页面创建标准化格式,例如公司的品牌或风格指南、个人博客或日记。
  • 将常用信息(例如联系方式或免责声明、重要消息或对读者的警告)插入到多个页面中。
  • 为类似类型的页面(例如图书页面或人物简介)提供一致的布局。
  • 创建可以轻松添加到页面以显示关键信息的信息框或其他类型的数据表。
  • 为文章添加统一结构的引文和参考文献。
  • 自动执行重复性任务,例如生成报告或数据摘要。
  • 包含大量相关页面链接的导航框。
  • 作为各种扩展(如Cargo)的辅助工具。

其中最熟悉的可能就是信息框和导航栏。
Personal-Infobox.png
导航框模板.jpg

MediaWiki模板如何使用?

在MediaWiki中引用模板有两种主要方法:使用“嵌入”语法,如下所示:

{{模板名}} 

或使用“替换”语法,如下所示:

{{subst:模板名}}

嵌入语法告诉MediaWiki将模板的内容直接插入到页面中。这意味着对模板的任何更新都会自动反映在使用它的页面上。

另一方面,替换语法告诉MediaWiki将模板的内容复制到页面中并将其视为常规页面内容。这意味着对模板的任何更新都不会反映在使用它的页面上。

除了简单地插入内容之外,模板还可以接受参数,这允许你自定义插入的内容。这些模板功能可以更轻松地创建复杂的结构化内容。

模板参数的值可以通过其他扩展(例如DynamicPageList3 )查询,甚至可以存储在页面内容旁边(例如Semantic MediaWiki),以进行页面的细粒度分组或过滤。其他扩展(VisualEditorPage Forms)可以提供用于模板值引导输入的表单(必要的话需安装TemplateData扩展)。
MediaWiki_VisualEditor_Insert_Template.jpg

如何在MediaWiki模板中使用参数?

要在MediaWiki模板中使用参数,首先需要在模板的代码中定义参数,之后才能够将值传递给内联模板调用。
MediaWiki-Hints-Templates__740.webp
例如,可以设计一种通用提示模板,根据上下文的需要插入特定图像和标签。在上面的示例中,你可以添加“Hint type”参数,如下所示:

{{Hint | Hint type=Observe | 此处输入提示文字…… }}

{{Hint | Hint type=Helpful hint | 此处输入提示文字…… }}

{{Hint | Hint type=Caution | 此处输入提示文字…… }}

如此一来,采用模板就完成了格式化工作,让编辑者可以专注于提示内容。为了实现这一点,模板代码必须有一种逻辑表达式(简化):

{{#switch: {{{Hint type|}}}
    |Caution = 变量内容(图像和标签)……
    |Helpful hint = 变量内容(图像和标签)……
    |Observe = 变量内容(图像和标签)……
    |#default = 如果没有为参数提供值,则使用图像和标签
}}

MediaWiki模板中的命名参数和编号参数有什么区别?

在MediaWiki模板中,命名参数和编号参数都允许你指定可在模板中使用的值,但它们的指定和访问方式有所不同。命名参数通过使用名称和等号来指定,如下所示:

{{template|name=value}}

可以使用名称在模板中访问它们,如下所示:

{{{name}}}

命名参数的优点之一是可以更容易地理解参数的用途,因为名称提供了描述:

{{模板名|name=张三|age=35|occupation=心理咨询师}}

这可以使模板更易于使用和维护。

另一方面,编号参数{{{1}}}仅通过提供值来指定,而不使用名称。可以使用其位置在模板中访问它们,如下所示:对于第一个参数,{{{2}}}对于第二个参数,依此类推。参数用|(管道)符号分隔。

编号参数更加紧凑,在某些情况下更易于使用。例如,如果你只想指定一个简单的项目列表,则可以使用编号参数,而无需为其分配名称,如下所示:

{{模板名|张三|35|心理咨询师}}

在此示例中,模板具有三个编号参数,第一个代表人名,第二个代表年龄,第三个代表职业。

使用MediaWiki模板的小贴士

  • 当你使用编号参数时,必须确保特定数据位于正确的位置;而如果使用命名参数,顺序可以是任意的。
  • 如果你在同一模板中混合了命名参数和编号参数,请注意命名参数不会分配编号。

在前面的例子中:

{{Hint | Hint type=Observe | 此处输入提示文字…… }}

有一个命名参数(“Hint type”)在模板代码中称为{{{Hint type}}},以及一个编号参数,在模板代码中称为 ,尽管参数{{{1}}}位于模板调用中的第二个位置。{{{1}}}这里的意思是“第一个未命名参数”。

  • 你可以为模板参数定义一个默认值:{{{Author|未知作者}}}。如果内联未提供名称,将呈现“未知作者”。
  • 如果你想在值为空时简单地抑制参数名称的输出,只需使用“ |”(管道)符号,例如:{{{Author|}}}。
  • 我们建议你从头开始创建自己的模板,或者修改现有模板以更好地满足你的需求,而不是从维基百科复制模板。这将确保模板针对你的特定场景进行优化,并有助于避免任何潜在的法律或技术问题。

相关文章

如何将维基百科(Wikipedia)中的模板导入到自己的MediaWiki中
如何用插件创建我的第一个MediaWiki信息框模板

参考资料

MediaWiki模板官方帮助文档
What are MediaWiki templates?

最后修改:2024 年 01 月 21 日
如果觉得我的文章对你有用,请随意赞赏