2024年3月12日更新

Header Footer

如果你浏览过A+医学百科这个网站,你会发现它上方的面包屑导航和下方的留言都找不到任何代码,其实就是得益于这款插件。它的作用就是在条目内容的上部和下部增加你希望展示的内容,比如你可以添加警告、提示等(当然你也可以直接使用模板)或者是配合评论插件批量在某个命名空间的页面中增加互动。
它可以在特定命名空间(比如我的图书命名空间,MediaWiki:Hf-nsheader-图书MediaWiki:Hf-nsfooter-图书)中使用或者某个特定页面中使用,灵活性还是挺高的。

PageNotice

既然提到上面那款插件,那就不得不顺带说一下这个两款在功能上基本类似,只是叫法不同而已(比如,一个用header,另一个用top),使用上也略微有所差别(一个使用命名空间名称,一个使用命名空间的ID)。

DynamicSidebar

提供基于用户页面、组和类别的动态侧边栏。也就是说,我们可以根据站点或者用户自身的需要进行侧边栏的配置,比如给用户组和管理员组提供不同的导航内容。
DynamicSidebar.jpg
从左到右,分别是用户、匿名用户和管理员的侧边栏。

ConfirmAccount

申请新账号,并且要通过管理员的确认才能启用。使用该扩展需要禁用直接创建账户的功能(禁用后原来的创建账号链接会跳转到申请账号页面)。
ConfirmAccount.jpg
注意:该扩展如果不禁用申请表单中的简历填写,那么用户在申请时无论输入多少汉字都会提示字数不足。解决办法参考本站文章《》。

InviteSignup

新用户注册采用邀请制,一般用于封闭式的维基站。

2024年1月20日更新

CharInsert

用于创建JavaScript插入字符的按键,一般被用于编辑器的增强功能(需使用小工具Gadget扩展)。
MediaWiki_CharInsert.jpg
上图中的下拉菜单和右侧的插入字符链接就是通过该插件以及小工具代码实现的,有兴趣的可以在官方文档中找到维基百科的小工具链接,也可以根据自己的需要进行修改。

ContributionScores

这是一个对用户贡献计分的扩展,如果你的站点有其他参与者并希望提供一个直观的贡献反馈,那么可以试试这个扩展,它可以列出贡献值最高的十位用户以及他们的分数。
分数的计算方法是编辑页面数 + 2 * (编辑数 - 编辑页面数)的平方根
ContributionScores.png

Portable Infobox

如果你喜欢MediaWiki的信息框,但又搞不清楚那些复杂的模板代码,那么这将是一个不错的选择。它是Fandom农场为用户开发的一款傻瓜化的信息框生成器。
Portable Infobox.jpg
它允许用户使用可视化的方式进行添加图像、标题和数据,并最终生成想要的信息框(代码为类XML格式)。

TreeAndMenu

将项目符号列表制作为文件夹树或动态下拉菜单。这个功能使得图书目录在生成上又进了一步。
TreeAndMenu_图书目录.jpg
这是我利用该扩展重新设置的图书目录,二级子目录默认收缩,可以减少目录的显示长度,当然也可以自己用代码实现。能力不行(比如我这样的)那就用扩展吧。

Widgets

中文名“微件”,它跟小工具Gadget很像,都是通过JavaScript和CSS代码来实现某些功能,当然从名称上也能理解它要比后者更轻量(比如插入某视频网站中的内容,或者是知识卡片之类的)。安装后会生成微件:的命名空间。
网上有部分开源的微件代码可供复制使用,但能用的真心不多。

PageImages

收集有关图像在页面上使用的信息,其目的是返回与文章相关的最合适的缩略图。该扩展从1.34版之后开始内置于MediaWiki中。
在《利用ChatGPT修改MediaWiki中藏书的代码》一文中就曾提到过该扩展的API使用。

Comments

另一款评论扩展,你可以根据需要在页面中插入代码以允许所有用户评论或某些特定用户进行评论。
Comments.png

HitCounters

页面统计工具,提供每个页面的统计数据,能够帮助站长了解哪些页面最受欢迎。

HideSidebar

看扩展的名字就知道了,功能就是隐藏侧边栏的,当然它只对匿名用户有效。
这个插件是什么时候被加入到我的网站的,现在都记不清楚了。其实看看代码会发现就是个配置项,还不如直接把代码粘贴到配置文件中算了,如果你懒得这么干就安装一下吧。

2022年5月22日更新

写在前面

下文中提到的Tabber扩展已经停用了,现在改为TabberNeue,当然我仍然倾向于用HeaderTabs
Math扩展从1.38版以后内置了,还是蛮期待的,有兴趣的可以去测试下。

HidePrefix

作者就是觉得前缀很难看,所以才开发了这款扩展,因为他觉得用户根本就不关心你的前缀是什么。先看看效果:
HidePrefix.jpg
注意页面标题和地址栏中的页面标题,少了前缀图书:,确实看上去舒服多了。
不过该扩展也有另外一个后遗症,就是在搜索结果中,如果关键字在标题中则会有前缀显示而不在标题中的则省略掉了前缀,所以强迫症患者慎用。

ShortDescription

ShortDescription.jpg
在标题下面加上简介,维基百科有类似功能,不过是通过模板的形式。另外WikiData有专用的简介魔术字,跟该扩展同名,不过既然我们用不上WikiData的数据,不如自己弄一个,结合语义化扩展更是如虎添翼。

Lingo

先看图:
Lingo.png
对于有缩写词需求的可以用上。

AutoSitemap

自动生成“ stitemap.xml”文件。

WikidataPageBanner

Banner_ex.png
虽然很早就用上了,但是一直没办法设计一条好的横幅,所以选择性地没放在之前的介绍中。

CSS

对的,就是这么简单直接,有了它你可以直接在页面中嵌入CSS代码或者是CSS文件。至于是选择模板样式还是它,看自己的喜好了(前者用于维基基金会,后者用于MyWikis等维基农场,维护应该都不是什么问题)。

2021年9月13日更新

再次补充一个扩展,也是网友在其他文章的回复中提到过的,那就是Labeled Section Transclusion

标记式章节嵌入扩展允许选择性地嵌入已标记的章节文本并正常解析Wiki格式。它的功能类似普通维基中‎标签的增强版本,可选择要包含的部分。这已在所有维基媒体的wiki上启用。

普通嵌入主要用来将小模板的大部分内容传入,而标记式章节嵌入主要用于将大型页面的一小部分嵌入。

两者也存在一些差异。在原生的模板嵌入中,章节是以结果标记,因此只能完全包含或跳过一个可能是不连续的章节。

而在这里,章节以名称标记,且由调用者选择行为,可以按需要包含或跳过章节。不同的页面可以包括或排除自己选择的章节,不限数量且可任意重叠。

通过名称而非行为标记章节将允许“编辑章节”链接对从较大文本中摘录的内容更适当体现,因为扩展现在可以考虑在页面开头跳过的部分,从而允许适当地偏移包含的部分。

这是官网给的说明,简单来说就是它能实现将某个条目中的章节嵌入到新的条目中,并且可以自定义哪些章节需要嵌入而无需考虑是否连续。
如果你去查看维基百科的某些模板或模块的说明文档,你可能会发现之前很多重复工作维基都是用模板来实现的,比方说我把某些信息汇总成一个表格并保存为一个模板,需要的时候加入该模板即可。而采用Labeled Section Transclusion之后,只要你在某个特定页面建立过该表,那么通过{{#lst:xxxx}}的方式同样可以实现这种效果。至于选哪种方式就看自己的习惯了,不过在我看来,后者将大大减少模板的数量。

2021年1月11日更新

最近又陆陆续续地测试了几个扩展,包括官方系统中新增的,补充如下:
开始前先上几张图,下面很多扩展都跟它们有关。
mediawiki-page-sample.png
mediawiki-page-forms-editing-book.png
category-in-gallery.png

Cargo

Cargo是MediaWiki的一项扩展,可以提供轻量的方式来存储和查询数据,这些数据是通常通过信息框(infobox)等模板调用的。Cargo在概念上类似于Semantic MediaWiki扩展,但是有许多有点,比如容易安装,容易使用。
Cargo将所有的数据存在数据库表中,而这些表可以被MediaWiki自己的数据库(默认)或分开的数据替换。在大多数情况下,每个模板都会将其数据存储在单个数据库表中,每个相关模板参数对应一列。有少量例外:包含数组/列表以及包含地理位置的字段的处理会更复杂一些,这是因为大多数数据库系统缺乏对这些类型的原生支持。多个模板也可以将它们的数据存储在同一个数据库表中。

跟Semantic MediaWiki一样,都是用于语义化的插件,只是复杂程度会比后者小很多,适合新手入门。网上教程较少,官方的文档很多地方讲得不是很清晰,需要慢慢琢磨。
自打用上这个和后面的Page Forms,简直就是为自己打开了新世界的大门,MediaWiki的可玩性瞬间提高N倍。
有兴趣的可以参考本站的文章《MeidaWiki教程之Cargo篇》。

Page Forms

页面表单(Page Forms),在2016年以前曾称语义表单(Semantic Forms),是MediaWiki的一个扩展,可供用户利用表单的方式,来新增、编辑和查询数据。 在最初创建时,该扩展仅仅是Semantic MediaWiki扩展的分支之一,旨在能够利用SMW来编辑模板,并存储模板参数。这也正是为何它曾经称作“语义表单”的原因。不过,如今,该扩展也可以与另外的扩展:Cargo扩展配合使用,或在两者皆未安装的情况下工作。
很简单地说,页面表单可让您能够在自己的wiki站点之上备有用来创建和编辑页面的表单以及用来查询数据的表单,且无须进行任何的编程。不但管理员可以创建和编辑表单,用户自己也可以这样。

这款插件最初就是为了配合Semantic MediaWiki使用的,如今同样能够适用于Cargo,当然你也可以单独使用。它可以通过表单的方式快速添加数据,如果能够熟练掌握,某些特定类型的条目基本上可以直接用表单生成了。
本站的《如何用插件创建我的第一个MediaWiki信息框模板》中也已经提到过它(那是我第一次接触Page Forms),有兴趣的可以去翻看,至于教程文章正在翻译整理中,敬请期待。

VEForAll

这个完全是为了Page Forms而生的扩展,前身就是VEForPageForms,它的作用就是为了能够在表单中使用可视化编辑器。因为从1.31版之后,表单对WikiEditor的支持就有问题,需要修改源码。索性就用可视化编辑器好了,尤其是1.35版之后,不再需要单独安装Parsoid服务,便捷度大大提高。
上面第二张图中,条目内容就是开启了可视化编辑器的效果,在插入部分只支持少数(至少不支持模板,尝试开启还是失败了)。
目前为测试版,可能会存在不确定的错误,比如跟下面的扩展“神仙打架”。

HeaderTabs

想要使用选项卡,那么还是推荐使用这个,虽然文后提到另一款Tabber,但个人还是喜欢这款(上面第一张图有显示效果)。
注意:

  1. 该扩展也可以用于表单中,但是可能会因为CSS的关系导致VEForAll无法正常使用,所以还是老老实实放在页面内容中好了。
  2. 如果你把所有内容全部做成选项卡来显示,那么popup扩展的显示效果就会变成空白,所以最理想的方式就是不要将简介内容放进去(哪怕写简单一两句至少弹窗时也有内容显示)。

SemanticRating

一个样式扩展,功能很简单,就是显示评分的“小星星”(上面第一张图,书籍信息框最下面的评分就是它生成的)。
注意:这款插件在可视化编辑器中可能会出错,导致模板内容看不见,但不影响使用。

Lockdown

不想随随便便让人把你网站上的劳动成果窃取掉,那么就可以使用这款插件(虽然不符合互联网的开放精神)。该扩展可以限制特定的用户群体对特定命名空间和特殊的页面的各类动作(包括浏览、编辑等)。

CommentStreams

MediaWiki的评论系统,需要的人可以考虑(官方的样式跟网站有点格格不入,可以考虑美化一下)。
CommentStreams.png

WikiSEO

SEO扩展,允许你添加常见的例如“关键字”和“描述”等元信息。你也可以将SEO内容做成模板嵌入到页面中,如果使用语义化扩展(比如Cargo或SMW)的话,结合模板更是能提高生成效率。

2018年9月29日

才发现一个有意思的现象,MediaWki的安装包里竟然自带了很多的插件,只是都没有启用。它是希望我们自己探索并发现吗?
这两天开始逐渐地倒腾起插件来,往站点上传的时候才注意到大凡实用的插件它都带了,可能会存在版本略低的现象。对于使用惯了默认不带插件或者仅有一两个插件的其他系统来说,官方内置这么多还真有些受宠若惊了!
注:这段话写于第一次安装完MediaWiki之时,估计那时连配置过程都没好好研究,所以才会提出这种问题。
相对于WordPress这种只带一两个插件的做法,MediaWiki实在是太厚道了,安装包内竟然自带了这么多的扩展。而且随着版本的不断升级,所带的扩展也越来越多。
这次趁着升级,把用到的插件都整理一下,不然时间一久难免又忘。

官方自带扩展

以下扩展截止于1.31.1版(感觉这一版自带的扩展更多),并以字母顺序排列

CategoryTree

动态导航分类结构。
CategoryTreeExample.png

Cite

增加用于引用的<ref[ name=id]><references/>标签。
Cite_extension_screenshot.png
添加参考引用的必备插件。

CiteThisPage

添加引用特殊页面和工具箱链接。
Cite_This_Page_MediaWiki_plugin.png
可以将条目的引用生成不同的引用格式,除了像维基百科这种相对具有权威性的站点,其引用还有些价值,个人站点貌似不实用。

CodeEditor

使用Ace编辑器实现编辑JavaScript和CSS页面时的语法高亮功能。
CodeEditor_extension_screenshot.png
这个在编辑代码(更准确的说是在线浏览代码,微调代码)时有用,但如果只是从其他站点搬运代码过来的话,用处同样不大。

ConfirmEdit

提供验证码技术防止垃圾信息和密码破解破坏。
MediaWiki_Extension_ConfirmEdit.png
见仁见智的插件,安全这东西不用麻烦,用了也麻烦。

Gadgets

Screenshot-gadgets-tab.png
MediaWiki的小工具扩展工具,可以说是整个系统强大功能的基石。
这部分可以单独开一篇文章来介绍。

ImageMap

容许客户端可以使用<imagemap>标签整可点击图像地图。
ImageMap.png
鼠标在图片不同区域会有不同的动作,但是编辑数据比较麻烦,实用性不高。

InputBox

允许包含预先设置的HTML表单。
Simple_Input_Form.png

Interwiki

新增特殊页面以查看和编辑跨wiki表。
MediaWiki_extension_Interwiki.png
除了像维基百科这种大型站点存在跨wiki的情况,基本上个人站长都用不到。

LocalisationUpdate

自动更新本地化的信息,换句话说,就是在使用过程中如果发现系统、插件和皮肤有适合自己语言的更新就升级。[[1]][53]

MultimediaViewer

在全屏界面中以较大尺寸显示缩略图。
Screenshot_of_MultimediaViewer_extension_2014-04-21.png

Nuke

让管理员可以批量删除页面。
Nuke.png

OATHAuth

提供使用基于HMAC的一次性密码的身份验证支持。

ParserFunctions

用逻辑函数加强解析器。如果你不希望自己从维基
百科上下载的模板无法使用,那还是老老实实启用它。

PdfHandler

在图像模式中查看PDF文件的处理器。

Poem

添加<poem>标签用于诗歌格式。
Gci_mediwiki.png
装不装就看你的需求了。

Renameuser

添加更改用户名的特殊页面(需要renameuser权限)。
SpecialRenameuser.png
如果站点的用户数不多,其实用处不大。甚至有很多个人的维基站都是站长自己在维护,所有条目也都出自站长之手就更没有必要了。

ReplaceText

允许管理员在内容页面的文本和标题上进行全局字符串查找和替换。
Replace-text-prelim-screenshot.png

SpamBlacklist

基于正则表达式的反垃圾工具允许将页面URL及注册用电子邮件地址列入黑名单。
SpamBlacklist.gif

SyntaxHighlight_GeSHi

使用Pygments - Python syntax highlighter以提供语法高亮<syntaxhighlight>
SyntaxHighlighting_with_Pygments.png

TitleBlacklist

允许管理员通过黑名单和白名单禁止页面和用户帐户的创建。
TitleBlacklist_demonstration.png

WikiEditor

提供高级、可扩充的wiki文本编辑界面。
VectorEditorBasic-en.png
维基的经典编辑器,功能简单,跟可视化编辑器VisualEditor比起来简直弱爆了,但其优点就是稳定。另外,如果你从维基百科等上扒资料的话,使用wiki编辑器进行复制粘贴会方便很多。

其实以上所带的官方插件有很多都用不上,如果你去看看维基网站甚至是MediaWiki自己的官网,就会发现他们也只用到一部分,所以安装或升级时可以考虑删掉部分无用的。
注:即便删了,官网都会提供单独的插件可供下载。

接下来我们看看维基百科这个业内标杆所带的插件(以下按照使用率和功能性排序)。

维基常用插件

VisualEditor

MediaWiki的可视化编辑器。
VisualEditor_toolbar-zh.png
对新手而言绝对是编辑利器,安装颇为麻烦(需要parsoid的支持,具体见本站文章《为MediaWiki安装可视化编辑器》)。

TemplateData

实现模板参数的数据存储(使用JSON)
Screenshot_of_TemplateData_extension.png
配合可视化编辑器使用的一大利器,加入模板数据之后,可以自动生成模板参数表方便用户查阅,更重要的是在编辑条目时可以方便快速地添加数据。
Screenshot_of_TemplateData_use.png

RelatedArticles

添加链接至相关页面的页脚。
Readmore-_desktop-_prototype.png
增加同类主题的相关页面,方便用户的阅读体验。可以根据Cirrus Search在算法上确定也可以手动添加。

Disambiguator

添加标签__DISAMBIG__以标记消歧义页面。并且增加两个新的特殊页面:

  • Special:DisambiguationPages - 列出维基上的所有消歧页面。
  • Special:DisambiguationPageLinks - 列出维基上链接到消歧页面的所有页面。

Popups

当用户在页面链接上悬停时显示预览。
Hovercard_english.png
当用户悬停在一个条目链接时,显示带有条目内容摘要的弹窗。

TimedMediaHandler

音频、视频和字幕的处理程序,支持WebM、Ogg Theora、Vorbis、srt格式。
Screenshot_of_TimedMediaHandler_extension_with_Big_Buck_Bunny_as_background_video.png
如果你需要偶尔上传一些视频文件又不希望借助第三方平台的话,可以考虑安装。个人站点同样不太建议安装,毕竟空间和性能都摆在那里。

Echo

用于通知用户有关活动和消息的系统。
Screenshot_of_Echo_notification_extension.png

CodeMirror

在wiki文本编辑器中提供语法高亮显示。
Pride_and_codemirror.png
如果习惯了使用wiki编辑器,这个功能倒是比较实用。

Math

<math>...</math>标签间生成数学公式。
ExtensionMath_(cropped).png

RevisionSlider

显示一个滑块,它允许在差异页面上选择和比较修订。
Screenshot_Revision_slider_EN_large (1).png
可以更容易地在修订版本间移动。

TemplateWizard

提供模板插入向导的Wiki编辑器插件。
TemplateWizard_help_template_en.png
如果你使用的是可视化编辑器,那么这个界面你可能已经很熟悉了。如果你还是喜欢采用wiki编辑器但又希望增加使用体验那么可以考虑采用本插件。

CirrusSearch

以Elasticsearch为基础的MediaWiki搜索工具。相较于MediaWiki搜索有三大提升:

  • 更好的支持以不同语言搜索。
  • 更快的更新搜索索引,即页面修改能更快在搜索引擎中显示出来。
  • 展开模板,即在一个模板中的全部内容也能被搜索引擎搜索到。

注意:使用本插件前需要安装另一个扩展Elastica(用于其他基于Elastica库的Elasticsearch功能扩展)。

AdvancedSearch

Special:Search中提供高级搜索功能的轻松访问。
AdvSearch_Screen_20170620.png
增强功能之一,提高搜索效率。目前仍在测试阶段,所以请谨慎使用。

Flow

讨论系统,又称StructuredDiscussions。
StructuredDiscussions_generic_screenshot.png
协作编辑或者是多用户反馈可用,个人站点请斟酌。

Quiz

允许创建测验问卷。
Quiz_extension.png
这其实是为维基教育准备的一个插件,主要用来做试卷测试的,当然你也可以用它实现更多功能。

TemplateStyles

实施基于模板的样式表。
引入一个<templatestyles>标签,将其放在模板中允许模板具有自定义样式,而无需将它们放在MediaWiki:Common.css中。

TemplateSandbox

呈现一个有传输自沙盒的模板的页面。
Screenshot_of_TemplateSandbox.png
为了鼓励用户大胆尝试编辑和修改模板及其他页面而无需担心造成破坏,建议使用沙盒模式。在维基百科中是一个很实用的功能,但在个人站点中基本可以忽略。

Abuse Filter

对编辑行为自动进行条件判定。
AbuseFilter-Management.png
允许具有权限的用户设置当用户的操作(例如编辑)匹配特定标准时,要进行的特定操作。个人站点用户数量少的情况可以不考虑。

UrlShortener

任意URL的缩短器。
UrlShortener.png
生成短链的扩展,需要mod_rewrite(或等效)的功能。玩玩可以,实用性同样不强。

EasyTimeline

添加<timeline>标签以创建时间轴。
EasyTimeline.png
简单的时间轴工具(默认的样式粗糙),如果你需要做些里程碑或者历史图表可以考虑一下。

Graph

允许<graph>标签或全部页面成为基于Vega的图形。
vg.png
专业插件之一,反正我不懂Vega,有兴趣的可以看看Demo

Kartographer

允许将地图添加至wiki页面。
Kartographer.png
采用OpenStreetMap的地图数据,汉化一般。

其他扩展

MsUpload

为一个或多个文件同时开启轻松上传。
Msupload_version_1.27_with_wikieditor.png
如果你使用的是wiki编辑器,那么这个插件可以让你轻松地批量上传文件。

Tabber

允许在页面内创建标签页。
Tabber_Extension_-_Sreenshot.jpg
如果你想让你的维基站点有点不一样的特色,或许可以尝试一下。

MobileDetect

检测移动设备并允许使用 <nomobile><mobileonly> 标签控制在不同情况下的显示内容。

RandomSelection

显示给定集合中的随机选项,并且根据选项可以生成随机内容(比如精选文章、随机问候、知识问答等)。注意,千万不要跟MediaWiki的随机页面搞混了。
RandomSelection_心理问答.jpg
这是借鉴网上的思路做的一个问答模板,每次刷新页面都会出现不一样的题目。

External Data

该外部数据扩展允许链接到MediaWiki网页进行检索、过滤和格式化从一个或多个源的结构化数据。这些来源可以包括外部URL、常规Wiki页面、上传的文件、本地服务器上的文件、数据库或LDAP目录。

总之看上去很强大,但还没到研究它的地步(精力不够)。

Semantic MediaWiki

让您更亲近wiki——对机器与人都是如此。高阶玩家的扩展。

以上就是在玩基过程中能用到的大部分扩展。

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