Jump to content

Handbuch:Interwiki

From mediawiki.org
This page is a translated version of the page Manual:Interwiki and the translation is 96% complete.
Outdated translations are marked like this.

Interwiki-Links sind Links zu Seiten anderer Projekte, die von einem internen Link-Stil mit Präfixen Gebrauch machen.

Interwiki-Links ermöglichen es, Seiten von bspw. Wikipedia, Wikibooks, Wikinews etc. oder von deinem Wiki-Projekt in verschiedenen Sprachen zu verlinken. (Siehe Manual:Wiki-Familie .)

Ein Link wie [[Wikipedia:Main Page]] wird angezeigt als Wikipedia:Main Page und verweist auf die Hauptseite der englischen Wikipedia.

Tabelle und Query-API

Interwiki-Verknüpfungen werden in der interwiki -Tabelle der MediaWiki-Datenbank gespeichert. Du kannst diese Interwiki-Liste über die interwikimap-Eigenschaft von der siteinfo Meta-Query-API erhalten, anders ausgedrückt über eine API-Anfrage wie etwa

Standardeinträge

Mehrere Wikimedia-Projekte (und andere) sind für Interwiki-Verlinkungen schon voreingestellt und bereit zur Nutzung, sodass du sie benutzen kannst, ohne deine Datenbank bearbeiten zu müssen.

Im Folgenden finden sich einige Beispiele von Interwiki-Präfixen, die standardmäßig verfügbar sind (Wikipedia ist auch verwendbar, 1.10 und höher):

Präfix Ziel-URL Anwendungsbeispiel
commons https://commons.wikimedia.org/wiki/ [[commons:MediaWiki]]
mediazilla http://bugzilla.wikimedia.org/ [[mediazilla:1209]]
metawikimedia (vor Version 1.23: metawikipedia) https://meta.wikimedia.org/wiki/ [[metawikimedia:Main Page]]

Die vollständige Liste der standardmäßigen Interwiki-Präfixe ist verfügbar unter maintenance/interwiki.list.

Siehe m:Help:Interwiki linking für vollständige Informationen zum Verlinken aus Wikimedia-Projekten bzw. zu ihnen.

In einigen Installationen sind keine von diesen vorinstalliert.

Eine neue Webseite für Interwiki-Verlinkungen hinzufügen

  • Interwiki-Verweise sind in der Datenbanktabelle interwiki der Datenbank eingetragen.
  • Um diese zu ändern, musst du die Datenbank bearbeiten, wie unten gezeigt.

Die Beispiele hierunter zeigen, wie w: als Verknüpfung zur englischen Wikipedia eingerichtet wird, zusätzlich zum ausführlicheren Standardeintrag "wikipedia:".

Die Idee ist, eine Zeile in dieser Form:

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

in die interwiki-Tabelle einzufügen.

Einzelne Zeile

Erfahrene Benutzer können eine einzelne Kommandozeile wie folgt verwenden:

INSERT INTO interwiki (iw_prefix, iw_url, iw_api, iw_local, iw_trans, iw_wikiid) 
VALUES ('w', 'https://en.wikipedia.org/wiki/$1', 'https://en.wikipedia.org/w/api.php', 0, 1, '');

Exportieren, Einfügen, Zurückimportieren

Alternativ kann der folgende Schritt-für-Schritt-Vorgang durchgeführt werden, der die interwiki-Tabelle exportiert, eine Zeile einfügt und dann zurückimportiert:

  • Exportiere die Datenbanktabelle interwiki
  • Füge am Ende der Tabelle eine Zeile in der folgenden Form ein (die englische Wikipedia wird als Beispiel herangezogen):
('w', 'https://en.wikipedia.org/wiki/$1', 1, 0);
In der oben stehenden Anweisung MUSS das Semikolon ';' am Ende der Tabelle stehen, wie gezeigt. Am Ende jeder anderen Zeile der Tabelle darf nur ein Komma ',' stehen.
  • Importiere die Datenbanktabelle interwiki

Testen

Um die Konfiguration zu testen:

  • Gehe zu Deiner Seite,
  • erstelle einen Artikel mit folgendem Inhalt:
    [[w:Wikipedia:Village pump|]]
  • Das sollte einen Link zur Seite „Village Pump“ unter en.wikipedia.org (mit der URL https://en.wikipedia.org/wiki/Wikipedia:Village_pump) anzeigen.

Feld-Dokumentation


Tipp für Wiki-Administratoren: Mehrere Hilfeseiten führen zu MediaWiki.org's Handbuch Namensraum. Um diese Verweise in Ihrem lokalen Wiki zu aktivieren, ist ein Interwiki-Verweis mit iw_prefix=manual und iw_url=http://www.mediawiki.org/wiki/Manual:$1 hinzuzufügen.

Tipp für Wiki-Administratoren: $wgTranscludeCacheExpiry sollte in Ihren LocalSettings.php eingestellt werden, wenn Änderungen im verknüpften Wiki durchgeführt werden. Oder die Tabelle transcache im lokalen Wiki wird entleert.

Interwiki-Verweisungen zu anderen Sprachen

Interwiki-Verweisungen zu anderen Sprachen

Wenn ein Handbuch der Wiki-Familie installiert ist, kann von einem englischen Artikel zu einem Artikel in der Zielsprache verwiesen werden, wenn es auch ein Projekt in der Zielsprache gibt. Gleich unter der Werkzeugkiste (toolbox) kann MediaWiki eingestellt werden, um diese Verweiswungen im Navigationsleiste anzuzeigen.

In Ihrem Dateisystem gibt es einen Unterordner Ihrer MediaWiki-Installation, genannt "Sprachen (languages)". Dort enthält Names.php eine Liste bekannter Sprachen und deren Präfixe. Soll zum Beispiel ein deutsches Projekt hinzugefügt werden, sucht man in Names.php nach "Deutsch" und nimmt das Präfix "de".

Wenn das "richtige" Präfix bekannt ist, ist in der Datenbanktabelle interwiki eine neue Zeile einzufügen:

iw_prefix Sprach-Präfix (z.B. "de" für Deutsch), wie es in Names.php steht.
iw_url URL Ihres Wiki-Projektes (z.B. http://de.example.org/index.php/$1)
iw_local same as above at #Adding a new website for interwiki linking
iw_trans same as above at Adding a new website for interwiki linking

Jetzt kann von einem Artikel auf den gleichen in anderen Sprachen verwiesen werden. Durch Einfügen der [[de:Hauptseite]] auf Ihrer englischen Hauptseite (Main_page) wird ein Verweis "Deutsch" unter der Werkzeugkiste (toolbox) erzeugt, der auf die Hauptseite (Main_page) des deutschen Wiki führt.

Dieser Verweis wird nur im Bereich der Navigationsleiste gezeigt und nicht im Artikel. Wenn ein Verweis innerhalb des Textes erstellt werden soll, muss ein Doppelpunkt vor dem Präfix gesetzt werden: [[:de:Hauptseite]] oder $wgInterwikiMagic auf "false" gesetzt sein.


Die Interwiki-Tabelle aus einem Wiki exportieren

Der folgende JavaScript-Code führt die API-Abfrage aus, um die Interwiki-Zuordnung eines vorhandenen Wikis abzurufen, und zeigt dann die SQL INSERT-Anweisungen an, um die Interwiki-Tabelle in einem neuen Wiki zu füllen. Sie führen es beispielsweise aus, indem Sie den Code über die Entwicklertools Ihres Browsers einfügen oder ihn in Special:MyPage/skinname.js platzieren und eine Vorschau anzeigen.

function ExtractInterwikiMapTable() {
	$.getJSON(mw.config.get('wgScriptPath') + '/api.php?action=query&meta=siteinfo&siprop=interwikimap&format=json', function(data) {
		var iw_prefix, iw_url, iw_local, iw_api, re_escape = /(')/g, result = '';
		for (var i = 0, iwm = data.query.interwikimap; i < iwm.length; i++) {
			iw_prefix = "'" + iwm[i].prefix.replace(re_escape, '\\$1') + "'";
			iw_url = "'" + iwm[i].url.replace(re_escape, '\\$1') + "'";
			iw_local = (typeof iwm[i].local == 'string') ? '1' : '0';
			iw_api = "'" + (iwm[i].iw_api || '').replace(re_escape, '\\$1') + "'";
			result += 'INSERT INTO interwiki (iw_prefix, iw_url, iw_local, iw_trans, iw_api) VALUES ('+iw_prefix+', '+iw_url+', '+iw_local+', 0, '+iw_api+');\n'
		}
		$('<textarea style="width:800px;height:400px;"/>').val(result).appendTo(document.body);
	});
}

$(ExtractInterwikiMapTable);

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

Linksearch funktioniert nur für letzteres.

Wikitext mit Interwiki-Links ist nicht immer leicht zwischen verschiedenen Wikis zu übertragen, weil sie nicht konsequent die gleichen Interwiki-Präfix verwenden, oder möglicherweise nicht alle haben. Zusätzlich können Interwiki-Links die Nutzer manchmal irreführen, da sie nicht wissen, wann sie auf eine andere Website gesendet werden.

Sie können zwischen den "extiw" und "external text" CSS-Klassen für Links wählen, je nachdem, ob Sie möchten, dass sie gleich oder anders aussehen. Interwiki-Links sind einfacher zu tippen, aber die URL von der Webseite zu kopieren, ist praktisch. Templates like w:Template:imdb title can be set up to use either an interwiki link with a parameter like "tt0389790" or "0389790", or an external link with a parameter like one of those or the full URL, making it easier to include IMDb references.

Interwiki verlinkt zum lokalen Wiki

Interwiki-Links können so konfiguriert werden, dass sie auf das gleiche Wiki verweisen, aus dem sie erstellt werden. Zum Beispiel zeigt mw:Manual:Interwiki/de auf diese Seite. Diese Links werden identisch wie interne Links behandelt und werden auf Special:WhatLinksHere angezeigt, sind fett formatiert, wenn sie ein Selbstlink sind, wie oben, sind rot formatiert, wenn die Seite nicht existiert, etc.

Siehe auch