Extension:Interwiki/zh
Interwiki 发布状态: 稳定版 |
|
---|---|
![]() |
|
实现 | 特殊页面 |
描述 | 添加一個特殊頁面以查看和操作跨wiki数据表 |
作者 | Stephanie Amanda Stevens, SPQRobin |
最新版本 | 3.1 (2018-06-07) |
MediaWiki | 1.28+ |
数据庫更改 | 否 |
许可协议 | GNU通用公眾授權條款2.0或更新版本 |
下载 | |
例子 | 参见Extension:Interwiki/Sites using this extension |
|
|
interwiki |
|
翻譯Interwiki擴充功能如在translatewiki.net可用 | |
问题 | 尚未完成的工作 · 回報錯誤 |
The Interwiki extension adds the "Special:Interwiki" page to MediaWiki , to view and edit the interwiki table, and a log of any actions made with it.
Since Interwiki version 2.1, it works with the $wgInterwikiCache , and the CSS uses ResourceLoader .
The list of "Special:Interwiki" is identical to the API action=query&meta =siteinfo&siprop=interwikimap, except the iw_api field is not available.
下载
此扩展可直接从Git检索到 [?]:
- 浏览代码
- 部分扩展有稳定版本标签。
- 浏览标签
- 选择标签
- 点击“快照”
- 每个分支与过去的MediaWiki发布版本相关联。 这里也有一个“主线”分支,包含最新alpha版本(可能需要MediaWiki的alpha版本)。
- 浏览分支
- 选择一个分支名称
- 点击“继续”
提取快照,并将它放置在您的MediaWiki安装副本的extensions/Interwiki/目录中。
如果您对git熟悉,并且拥有您服务器的shell访问权,您也可以通过以下方法获得扩展:
cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Interwiki.git
安装
- 下载文件,并将其放置在您
extensions/
文件夹中的Interwiki
目录内。 - 将下列代码放置在您的LocalSettings.php的底部:
wfLoadExtension( 'Interwiki' ); // To grant sysops permissions to edit interwiki data $wgGroupPermissions['sysop']['interwiki'] = true; // To create a new user group that may edit interwiki data // (bureaucrats can add users to this group) # $wgGroupPermissions['developer']['interwiki'] = true; // delete the comment indicator # as appropriate
完成 – 在您的wiki上导航至Special:Version,以验证扩展已成功安装。
致使用MediaWiki 1.24或更早版本的用户:
上面的说明介绍的是安装此扩展的新方法,它使用wfLoadExtension()
。
如果您需要在早期版本(MediaWiki 1.24和更早版本)中安装此扩展,而不是wfLoadExtension( 'Interwiki' );
,您需要使用:
require_once "$IP/extensions/Interwiki/Interwiki.php";
- The configuration that comes with MediaWiki will not grant permission to any user group.
- To enable transclusion from other sites, you'll need to enable
$wgEnableScaryTranscluding
.
- To disable adding prefixes through the Special:Interwiki interface, set
$wgInterwikiViewOnly
totrue
.
interwiki
message item defined per locale in SpecialInterwiki.i18n.php
. 它的數值為查看和编辑跨wiki数据。配置跨语言链接
To set up interlanguage links using this extension, make sure that $wgInterwikiMagic
is set to true
and $wgHideInterlanguageLinks
is set to false
(they are like this by default, you don't need to change them usually).
Then go to Special:Interwiki as a user with the appropriate permissions.
For example, if the French version of your wiki was located at http://fr.foowiki.tld/wiki/
, you could add http://fr.foowiki.tld/wiki/$1
to the interwiki table with values trans 0 and local 0.
Then the interlanguage link to the French version would work, but a #REDIRECT to a French-language page from a page in some other language would be refused.
See Manual:Interwiki table for a full explanation of the forward (iw_local) and transclude (iw_trans) bits.
In brief:
- Enabling forwarding ('local' true) is normally done between all languages and projects in the same group, as it allows a link to any one of the languages to be used as a gateway to the others. The English-language Wikipedia, for instance, sets the 'local' bit true for all of the other-language Wikipedias and for projects like commons:, wikinews: or wikivoyage:. A user on a wiki outside Wikipedia where the wikipedia: interwiki prefix points to en.wikipedia.org could create a link like wikipedia:fr:Encyclopédie. That link goes initially to "fr:Encyclopédie" on the English-language Wikipedia. The en.wikipedia server immediately recognises fr: as a 'local' interwiki link, so replies with a redirect to la Wikipédia where fr.wikipedia.org/wiki/Encyclopédie displays the requested French-language Wikipédia page [[Encyclopédie]] et voilà.
- Enabling transclusion is rarely done, as it allows an article on one wiki to use templates from some other wiki. This is referred to as 'scary transclusion' as it will cause problems if the other wiki changes the template unexpectedly. A few wiki farms use this to create one 'central wiki' with various templates which are made available to other wikis in the same farm. If you don't need this, don't enable it.
Global interwikis
Since version 3, Interwiki supports defining a global/central database and pulling defined interwikis from there as well as from the local table. This functions essentially as a table merge, with local interwiki definitions overriding central. Language links are not pulled from the central table; these are set up as local-only due to a central table likely serving more than one project (with each having its own languages).
The central table is the interwiki table of the central wiki. This means that as far as the central wiki is concerned, it is basically just a normal non-global setup. There are therefore no special rights associated with the central (global) table, though it is likely you may want to be more picky about how you assign the 'interwiki' edit right on this wiki.
- This was decided by looking at current possible use cases (ShoutWiki's hub, Uncyclomedia's central wiki, and Meta-Wiki) where the central wiki isn't going to have anything extra anyway.
- This might change in the future, but anything more intelligent will require schema updates.
- This probably doesn't work with table prefixes because of how the table is accessed.
To set up a central interwiki table, simply provide the name of the database of the wiki you want to use:
// To enable pulling global interwikis from a central database
$wgInterwikiCentralDB = 'mw_central';
Replace 'mw_central' with the name of the database.
For those using table prefixes here is an alternative solution for "pool_example_wiki" tables.
$wgSharedDB = 'example_wiki'; # The $wgDBname for the wiki database holding the main interwiki table
$wgSharedPrefix = 'pool_'; # The $wgDBprefix for the database. Defaults to the prefix of the current wiki if not specified
$wgSharedTables = ['interwiki'];
Protocol-relative URLs
MediaWiki supports protocol-relative URLs (PRURLs), from MediaWiki 1.18+.
With a PRURL, a user accessing a page over http or https uses the same scheme to access the interwiki link.
To use a PRURL, first ensure the destination server supports HTTPS; if it does, then simply remove the http:
portion of the URL in the link table.
For example, change
https://en.wikipedia.org/wiki/$1
to:
//en.wikipedia.org/wiki/$1
![]() | 此扩展被用于一个或多个维基媒体项目上。 这可能意味着扩展稳定且工作良好,足以用在同等高流量的网站上。 请在维基媒体的CommonSettings.php和InitialiseSettings.php配置文件中寻找此扩展名称以查看安装它的网站。 详细的已安装扩展的完整列表可在wiki的Special:Version页面找到。 |
- Extensions bundled with MediaWiki 1.21/zh
- Stable extensions/zh
- Special page extensions/zh
- GPL licensed extensions/zh
- Extensions in Wikimedia version control/zh
- Extensions which add rights/zh
- InterwikiLoadPrefix extensions/zh
- UserGetAllRights extensions/zh
- All extensions/zh
- Extensions used on Wikimedia/zh
- Interwiki extensions/zh