Manual:Interwiki

Interwiki links are links to pages of other projects, using a prefixed internal link style.

Interwiki links make it possible to link to pages of (e.g.) Wikipedia, Wikibooks, Wikinews etc. or to your wiki-project in different languages. (See .)

A link like  will appear like this: Main Page and redirect you to Wikipedia's Main Page.

Interwiki links to other projects
Interwiki links are hosted in the  table of the Mediawiki database.

The list is available from the interwikimap property of the  meta query API, in other words  

The api interwikimap property gives incorrect results on wikis using the interwiki cache (like Wikimedia Wikis) prior to MediaWiki 1.19 (Bug 19838)

Default
Several Wikimedia projects (and others) are ready for interwiki linking by default, so you can use them without editing your database.

The following are some examples of interwiki prefixes which are available by default (Wikipedia is also available, 1.10 and after):

The full list of default interwiki lists is available at 

See m:Help:Interwiki linking for complete information on linking from/to Wikimedia projects.

In some installations none of these is pre-installed. Try  in this case.

Adding a new website for interwiki linking

 * Interwiki links are set in the  table of the database.


 * To modify these, you will need to edit the database, as below.


 * You might prefer to install an cat>Special:MyLanguage/Category:Interwiki extensions|Interwiki extension, which eases the process.

As Wikipedia isn't set up by default prior to version 1.10, you might want to add it (and other projects that you desire).

The examples below show how to set up  as a link to the English Wikipedia.

The idea is to insert a line of the form:

('prefix', 'URL format string', 1, 0)

into the  table.

Single line
Advanced users may use a single command line, as follows:


 * MySQL and PostgreSQL

Newer MediaWiki versions require some extra fields such as iw_wikiid.

Export, add, re-import
Alternatively, you can use the following multi-step process, which exports the interwiki</tt> table, adds a line, then re-imports it:


 * Export the database table

('w', 'https://en.wikipedia.org/wiki/$1', 1, 0); In the above code, the semicolon ';' as seen, MUST be at the end of the table. At the end of any other line within that table Only has ','.
 * add to the end of the table a line of the following form (using English wikipedia as an example):


 * Import the database table

To test
To test configuration:


 * Go to your site,


 * create an article, with the following content:


 * This should display a link to the 'Village pump' page on en.Wikipedia.org (the url <tvar|1> </>)

Field documentation
In detail, the fields of the  database table are as follows:

Prefixes must be all lower-case.
 *  : choose a prefix, which is used for interwiki linking, e.g. "wikipedia" for linking to Wikipedia.

Don't forget the  as it is replaced with the article's name you are linking to (  links to  ). If iw_url is a binary BLOB field (SVN version, but also occurs in version 1.11.0, bug?) this won't work directly. You have to enter it as binary. There are two possible solutions: 1. You save the url in a plain text file, then import it through phpmyadmin. 2. You can directly enter an SQL query.
 *  : enter the project's URL, e.g.  for Wikipedia.

See m:Help:Interwiki linking.
 *  : if 1, your wiki will redirect even external links of the form iw_prefix:title, not only those from its own pages; you need this if you want to use the redirect functionality from outside your wiki or other wikis use your transwiki functions for nested transwiki links (like w:en:fr:Wikipédia:Accueil).

You will also need to set $wgEnableScaryTranscluding = true in your LocalSettings.php
 *  : "transwiki transclusion" - set to 1 if you want to use pages from the other wiki as templates.


 *  : URL to the MediaWiki API, e.g.  (optional).

May be used (later?) for interwiki transclusions. (optional)
 *  : Database name of the wiki (If locally accessible).

Exporting the interwiki table from a wiki
The interwiki table can be queried through the API:Meta module using.

The following JavaScript code can be used to generate the SQL INSERT statements to fill the interwiki table, when run inside the wiki where that info should be extracted, for example, injecting the code through the browser's developer tools or placing it inside Special:MyPage/ .js and previewing: