Help:Interwiki linking

From Wikinews, the free news source you can write!
Jump to: navigation, search
Noia 64 apps help index.png
This is a copy of m:Help:Interwiki linking using Wikinews-specific templates. Don't edit this page, except to replace the contents with the current version of that master page. To make changes applicable on all projects, edit the master page; to change Wikinews-specific content, edit the templates; to make demos work, copy templates to this project, and images to Wikimedia Commons. Please see the history of the master page for author details. Please note that all meta content is licensed under the GFDL. As a result this page is licensed under the GFDL.- Edit this template

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. For example, [[wikipedia:InterWiki]] links to the InterWiki article on the English Wikipedia. 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.

Interwiki linking from and within Wikimedia[edit]

Within Wikimedia, for the purpose of 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 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[edit]

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

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, e.g. wikipediawikipedia: (fails) vs. wikipediawikipedia:Interwikimedia link (works). These prefixes are case insensitive.

One-letter prefixes (as a live check on the table):

Technical[edit]

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, e.g. .

For portability across projects, one may want to select a link code that leads to the same target from all projects, e.g. 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[edit]

Interwiki links can use prefixes for the project and/or for the language. Without 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, e.g. 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's local, and then interprets en: as w:en: 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

Wikia[edit]

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]]).

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

Interlanguage link[edit]

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, and top and bottom in Classic). The link label depends only on the sister project that is linked to, not on the linked page. The label is set in the configuration of the project. Typically, it is the name of the language written in that language. The target is only shown in the status bar, depending on the browser (oddly, there is not even a hover box).

Thus, interlanguage link is mainly suitable for linking to the 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.
    [[en:link]] without leading colon adds an interlanguage link to the page.
  4. <noinclude>[[category:name]]</noinclude> limited to actual page.
    <noinclude>[[en:link]]</noinclude> ditto limited to actual page.

For projects like Meta a missing leading colon has no effect, Meta doesn't support Interlanguage links. For Wikipedia and similar projects it's 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, 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, see e.g.:

In-page interlanguage links[edit]

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

Interlanguage link in the wider sense[edit]

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[edit]

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 externallinks 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, or not up-to-date, or in busy hours disabled. See also Finding external links to a page.

Using templates like {{tim|h:mlw}}, 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, {{tiw|h:mlw}}, which redirects to {{tiw|h:ml}}, the interwiki links are automatically converted to internal links. Hence they provide existence detection, and allow use of "What link here" as well as Linksearch.

Interwiki links to the same wiki versus internal links[edit]

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

Using templates like {{tim|h:ml}}, the advantages of internal links, interwiki links and external links are combined (with respect to portability: provided that a template with the same name and adapted content is present on the other site).

See also[edit]