Help:Interwiki linking

From The Scuba Wiki

Jump to: navigation, search
MediaWiki Handbook: Contents, Readers, Editors, Moderators, System admins +/-

By adding a prefix to another project, internal link style ("prefixed internal link style") can be used to link to a page of another project. A system of short-handed link labels are used to refer to different projects, in the context of interproject linking, as seen within the actual source text. For example, en: refers to the English Wikipedia. This is seen in [[en:Apple]], which produces en:Apple, a link to the English Wikipedia article on "Apple".

This is called interwiki. For each project, an interwiki map (a list of target projects with their prefixes) is specified (example). These target projects need not use MediaWiki and need not even be a wiki.

Contents

Interwiki linking from and within Wikimedia

Within Wikimedia, for the purpose of interlanguage linkshttp://en.wikipedia.org/wiki/Wikipedia:Interlanguage links (see below), the project families are Wikipedia, Wiktionary, Wikiquote, Wikibooks and Wikisource. Thus, this applies for a link like en:, de:, etc., from a Wikipedia to another one, from a Wiktionary to another one, from a Wikiquote to another one, from a Wikibooks to another one or from a Wikisource to another one.

The interlanguage link feature works on Wikimedia Commons and produces links to the Wikipedias. This is not reciprocal, a link from a Wikipedia to Commons is an in-page link.

Project titles and shortcuts

Project Long form Shortcut
Wikipedia [[wikipedia:]] [[w:]]
Wiktionary [[wiktionary:]] [[wikt:]]
Wikinews [[wikinews:]] [[n:]]
Wikibooks [[wikibooks:]] [[b:]]
Wikiquote [[wikiquote:]] [[q:]]
Wikisource [[wikisource:]] [[s:]]
Wikispecies [[wikispecies:]] [[species:]]
Wikiversity [[wikiversity:]] [[v:]]
Wikimedia Foundation [[wikimedia:]]
[[foundation:]]
[[wmf:]]
Wikimedia Commons [[commons:]]
Wikimedia Meta-Wiki [[metawikipedia:]]
meta:
[[m:]]
Wikimedia Incubator [[incubator:]]
MediaWiki [[mw:]]
MediaZilla / Bugzilla [[mediazilla:]]
[[bugzilla:]]
Testwiki [[testwiki:]]

* Other Wikimedia prefixes: betawikiversity:, download:, dbdump:, mail:, mailarchive:, otrs:, OTRSwiki:, quality:, spcom:, tools:, tswiki:, svn:, rev:, wmania:, wm2005:, wm2006:, wm2007:, wm2008:, wm2009:.

The long form doesn't work within the same project. The shortcut works everywhere. (That is the intention; currently, it does not work on all projects).

The interwiki map on Meta lists many prefixes, among others, [[wikipedia:]] (wikipedia:) for the English Wikipedia, working from any Wiki supporting the Meta interwiki map, not only from MediaWiki wikis. Some prefixes work only with a page, for example: wikipediawikipedia: (fails) vs. wikipediawikipedia:Interwikimedia link (works). These prefixes are case insensitive.

One-letter prefixes (as a live check on the table): Template:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1xTemplate:1x

Non-Wikimedia interwiki codes have a limitation, that they can only be used through a link. For example, the entry for "John" on Wiktionary, a Wikimedia project, can be accessed by [[wikt:John]] or http://meta.wikimedia.org/wiki/wikt:John. However, the latter method does not work for non-Wikimedia wikis. For example, the main page on the Mozilla Wiki can be accessed via [[MozillaWiki:Main Page]], but http://meta.wikimedia.org/wiki/MozillaWiki:Main_Page results in an error.

Technical

A project's own namespace prefix cannot be reused as code for an external project. However, the prefix used for a target project may coincide with the prefix for a project namespace, within that project. As a result, to link to a page in that namespace, use the same prefix twice, for example: en:Wikisource:Wikisource:Scriptorium.

For portability across projects, one may want to select a link code that leads to the same target from all projects, for example: MetaWikipedia:wikibooks:Main Page. The "superfluous" "MetaWikipedia:" prevents "wikibooks:" being interpreted as namespace prefix, when the code is used at wikibooks itself, while at Meta the "MetaWikipedia:" is ignored (it is not a namespace prefix and even at Meta itself, it is recognized as code for Meta). The codes above work from all projects; however, the existence detection and the self-link feature do not work on interwiki links.

Prefixes

Interwiki links can use prefixes for the project and/or for the language. Without the prefix, links are local, for pages in the same project and the same language. If only a language is given, they go to a page in the same (or similar) project for the specified language:

[[:fr:]] fr:
[[:os:]] os:

If only the project is specified, they typically go to the language of the source, see above. At most, two prefixes are needed for pages in any existing project and any supported language:

[[s:de:Hauptseite]] s:de:Hauptseite
[[b:en:Main page]]  b:en:Main page

In the case of more than one prefix, a page name has to be specified. For example, while w: and en: from Meta lead to the English Wikipedia's main page, a bare [[w:en:]] does not work: w:en:.

If the language is different, specifying it before the project can also work:

[[:de:q:Hauptseite]] de:q:Hauptseite
[[:en:n:Main page]]  en:n:Main page
[[n:en:Main page]]   n:en:Main page

The second example doesn't work from English Wikipedia w:en: pages, a project prefix before the language is better.

More than two prefixes are generally unnecessary, the following examples should work everywhere:

[[m:Help:Help]] m:Help:Help
[[w:Interwiki]] w:Interwiki

Two prefixes can have unexpected effects, for example, from Meta, the following links end up on different pages:

[[m:en:About]]  m:en:About
[[:en:m:About]] en:m:About
[[m:About]]     m:About

In the first case Meta ignores the m:, because it is local and then, interprets en: as w:en:, the prefix for the English Wikipedia. In the second case, the leading en: goes to the English Wikipedia, where the following m: goes straight back to Meta. The second example doesn't work at all, from English Wikipedia w:en: pages, only the third example works everywhere.

In other words, multiple prefixes are evaluated left to right by the relevant Wikimedia servers (project and language). For projects without different languages, like Meta (because Meta is multilingual by itself), language prefixes can be handled as shorthands for w: plus the specified language:

[[:pl:2006]]   pl:2006
[[w:pl:2006]]  w:pl:2006
[[:pl:w:2006]] pl:w:2006

From Meta, the first two links both arrive at the Polish 2006 page. The third arrives at the English Wikipedia, because that's how the server selected by :pl: interprets the second prefix w:.

For a portable link on that server, it would be a bad idea to use w:, but :pl: does the trick. To test that effect from Meta, the following links should go to the same page:

[[:ja:2006]]    ja:2006
[[:ja:ja:2006]] ja:ja:2006

A universal interwiki link, that is, one that works no matter from which Wikimedia wiki, can be written [[m:project:language:page name]] (e.g. m:b:nl:Wiskunde); this routes the parsing of the links via Meta (bug 4285).

Wikia

In Wikia, the prefix is the internal project name for some older wikis. For others, "Wikia:c:" is added in front (e.g. [[Wikia:c:psychology]] or shorter [[w:c:trains:locomotive]]). (The "c" is for "city", a legacy of Wikia's original name Wikicities.)

From Wikimedia projects, use [[wikiasite:psychology]], giving wikiasite:psychology; [[wikia:trains:locomotive]], giving wikia:trains:locomotive; or for the central Wikia, centralwikia:About Wikia.

Interlanguage links

For a complete list of current languages and language codes, see: w:List of Wikipedias

For a multilingual family of similar projects, with one project per language, a system for interlanguage linking can be set up, setting $wgInterwikiMagic to true and $wgHideInterlanguageLinks to false. If this project is in a family for which this applies, Help:Interlanguage link demo may demonstrate what is explained below (this depends on whether the same language codes are used).

An interwiki link within the family is treated differently, unless it is on a talk page of any namespace. It appears at one or two edges of the webpage (left in Monobook, top and bottom in Classic).

Thus, an interlanguage link is mainly suitable for linking to the most closely corresponding page in another language. It is not suitable for multiple links of the same other language. See Interlanguage use case for a discussion of common troubles with this system and other possible implementations.

The feature can also be used on an image description page, to link to the same or a similar image in a sister project. Other interwiki links to images require the prefixed colon.

Note that, if a page may be used as a template (even if it is not in the template namespace), it should note its interlanguage links between <noinclude> and </noinclude>. This is the same idea as for categories.

Comparison:

  1. [[:en:link]] or [[:category:name]] are ordinary links.
  2. [[m:en:link]] or [[m:category:name]] are interwiki links, see above.
  3. [[category:name]] without leading colon, adds a category to the page.
  4. [[en:link]] without leading colon, adds an interlanguage link to the page.
  5. <noinclude>[[category:name]]</noinclude> limits it to the actual page.
  6. <noinclude>[[en:link]]</noinclude> also limits it to the actual page.

For projects like Meta, a missing leading colon has no effect, because Meta doesn't support interlanguage links. For Wikipedia and similar projects, it is a major difference. The mutual order of interlanguage links is preserved, but otherwise the positions within the wikitext are immaterial, again the same rule as for categories. Usually they are put at the end. With section editing, they appear in the preview, if they are in the section being edited. A link to the project itself (hence, also a link to the page itself), even if referred to with the project prefix, appears in-page.

Suppose that we have pages de:Zug, en:Train and fr:Train, then we need:

Thus, there is no possibility of simply copying each list, let alone of using a template, as can be done, if different languages share one project with or without separate namespaces. For further information, see:

In-page interlanguage links

To make an interlanguage link in-page, prefix a colon (e.g. [[:en:wiki|wiki]]). This can be useful to link to a page in another language, if no local version is available. For example, several templates for conveniently making such links would be:

Interlanguage links in the wider sense

An interlanguage link in the wider sense includes a link to a corresponding page in another language, which, for the software, is a regular link, as opposed to one employing the special interlanguage link feature as described above. This can also be an internal link on a multilingual project, e.g. on Meta:

Possible reasons for using an "interlanguage link" in the page body include:

  • control over position
  • control over label
  • the target contains an anchor

Interwiki links versus external links

Disadvantages of interwiki links:

  • The wikitext is less portable across wikis, because wikis do not always have an interwiki prefix for the same sites and even if they do, the prefixes may differ
  • There is no feature to find interwiki links, while searching for an external link can be done with Special:Linksearch (if installed). This is due to the fact that, while there is an external links table, there is no such thing for interwiki links. The interwiki table only stores the interwiki prefixes with their targets as function of the parameter, not the instances of the links. Using the general text search, to search for interwiki links, is more work for the server and therefore, it may be slow, not up-to-date or in busy hours, disabled. See also: Finding external links to a page.

Using templates like template:h:mlw ( talk edit history links ), the advantages of interwiki links and external links are combined. When a page using this template, which is in this case used for links to the English Wikipedia, is copied to that site, a template with the same name is needed there too. Due to that template, w:template:h:mlw ( talk edit history links ), which redirects to w:template:h:ml ( talk edit history links ), the interwiki links are automatically converted to internal links. Hence, they provide existence detection and allow use of "What links here", as well as Linksearch.

Comparison:

  • [[imdbtitle:0389790|Bee Movie]] gives Bee Movie
  • [http://www.imdb.com/title/tt0389790 Bee Movie] gives Bee Movie

The applicable CSS classes are "extiw" and "external text". The choice may be governed by this, either way, for uniformity or distinction. An interwiki link is easier to type by itself, but if one goes to the webpage anyways, before putting the link, copying the URL is very convenient. When a template is created, e.g. w:template:imdb title ( talk edit history links ), the template can be made, such that it uses an interwiki link and a parameter, like "tt0389790" or "0389790", or that it uses an external link and a parameter like one of those or the full url, if that is more convenient.

Interwiki links to the same wiki versus internal links

Disadvantages of interwiki links to the same wiki, compared to internal links:

  • no existence detection
  • "What links here" works for internal links only

Advantages of interwiki links to the same wiki, compared to internal links:

  • better portability across wikis, provided that the same prefix applies and is not equal to a namespace name

When using templates like template:h:ml ( talk edit history links ), the advantages of internal links, interwiki links and external links are combined, provided that a template with the same name and adapted content is present on the other site.

See also


+/-

Links to other help pages

Help contents
Meta | Wikinews | Wikipedia | Wikiquote | Wiktionary | commons: | mw: | b: | s: | mw:Manual | google
Versions of this help page (for other languages see below)
Meta | Wikinews | Wikipediahttp://en.wikipedia.org/Help:Interwiki_linking | Wikiquote | Wiktionary
What links here on Meta or from Meta | Wikipedia | MediaWiki
Reading
Go | Search | Stop words | URL | Namespace | Page name | Section
Backlinks | Link | Piped link | Interwiki link | Redirect | Category | Image page
Logging in and preferences
Logging in | Preferences | User style
Editing
Advanced editing | Editing FAQ | Edit toolbar | Export | Import | Shortcuts
Tracking changes
Recent changes (enhanced) | Related changes | Watching pages | Diff
Page history | Edit summary | User contributions | Minor edit | Patrolled edit
Style & formatting
Wikitext examples | Reference card | HTML in wikitext | List | Table | Sorting | Colors
Special input and output
Inputbox | Special characters | Displaying a formula | Images (uploads) | EasyTimeline
Advanced functioning
Template | Advanced templates | Parser function | ParserFunctions | Parameter default
Variable | Magic word | System message | Substitution | Array | Calculation
Page management
Starting a new page | Renaming (moving) a page | Protecting pages | Deleting a page
Special pages
Talk page | Testing | Sandbox | CentralNotice

Template:-

Personal tools
support the site