前言
最近正在把收容失效终极版的多语言的部分内容往汉化组维基搬,比较有特点的是地图制作器的帮助手册,这个玩意需要翻译,所以维基的多语言就搞起来了。
目前,MediaWiki的多语言有三种方法:第一种是用翻译插件,第二种是Wiki农场,第三种就是本文要介绍的方法。
Wiki农场的优点在于,它可以在wiki的侧边栏上的“其他语言”里显示其他语言版的页面。而翻译插件一般都是在页面顶部有一个多语言的框(参考MediaWiki的wiki)。
这第三种方法就是wiki农场的变体,适合只想搭一个wiki的人。大概就是用一个wiki建wiki农场,然后在一个wiki之间“跨来跨去”。
步骤
安装Interwiki插件
MediaWiki 1.21及以上的版本自带这个插件。
-
将下载后的压缩包里的文件夹复制到
/wiki目录/extensions/
目录。 -
在wiki设置(
/wiki目录/LocalSettings.php
)里启用插件。在
LocalSettings.php
里加上一行:wfLoadExtension( 'Interwiki' );
-
设置超级管理员可以编辑跨wiki数据。
在
LocalSettings.php
里加上一行:$wgGroupPermissions['sysop']['interwiki'] = true;
这将会让你之后的步骤方便许多。当然你也可以不用wiki编辑,直接往数据库里插跨wiki数据也可以。但是我不会搞所以就不说了。
编辑跨wiki数据
-
在你的wiki里搜索
Special:interwiki
来转到跨wiki数据页面。 -
点击添加一个跨wiki或语言前缀。
-
在添加数据界面填写数据。
前缀要写MediaWiki的语言ID,可在
/wiki目录/includes/languages/data/Names.php
里找到。URL则要写你想要转到的页面链接。默认的wiki网址格式是:
https://wiki网址/index.php?title=页面名
因此可以写成:
https://wiki网址/index.php?title=$1
而有的wiki的网址格式改成了
https://wiki网址/页面名
,或者其他类型的。因此这种情况需要写成https://wiki网址/$1
。这块需要根据你的wiki情况来设置,只需要保证页面名用$1
代表就行。其他的东西都不需要写上或者框上。就像这样:
-
点击添加。
-
重复以上步骤,直到将你想要添加的语言都设置完毕。
多语言页面
结尾
这个方法也会有一定的问题:每个语言的页面都必须把其他所有语言的页面都在页面里链接上。
此外,你可能在维基百科上注意到了其他语言里有个添加链接的按钮。这个不需要在每个语言的页面上都链接其他语言的页面,所以你可能想要在自己的wiki上也整一个。
但是这是不可能的——这个添加链接依靠的是维基数据,也就是说,这个侧边栏的其他语言根本不属于wiki。