Handbuch:Interwiki

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Interwiki and the translation is 98% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎português • ‎română • ‎suomi • ‎русский • ‎العربية • ‎ไทย • ‎中文 • ‎日本語 • ‎한국어

Interwiki-Verweise sind Verweise zu den Seiten anderer Projekte, indem ein vordefinierter, interner Verknüpfungs- oder Verweisstil verwendet wird.

Interwiki-Verweise ermöglichen es auf Seiten von z.B. Wikipedia, Wikibooks, Wikinews usw. oder auf Dein Wikiprojekt in verschiedenen Sprachen zu führen. (Siehe Manual:Wiki family/deManual:Wiki family.)

Ein Verweis wie [[Wikipedia:Main Page]] wird in dieser Form angezeigt: Wikipedia:Main Page und führt auf die Wikipedia's Hauptseite (main page).

Interwiki-Verweise auf andere Projekte

Interwikiverweise werden in der interwikiManual:interwiki table-Tabelle der MediaWiki Datenbank gepflegt. Diese Liste ist aus der interwikimap Umgebung der siteinfoAPI:Siteinfo meta query API zugänglich, mit anderen Worten api.php?action=query&meta=siteinfo&siprop=interwikimap

Warnung Warnung: Das API interwikimap erzeugt fehlerhafte Ergebnisse in Wikis, wenn die interwiki cache (wie Wikimedia Wikis) vor der Version MediaWiki 1.19 (Bug 19838) verwendet wird.

Vorgaben

Mehrere Wikimedia Projekte (und andere) sind für Verweise mithilfe von Interwiki bereits voreingestellt und fertig zur Nutzung. Damit kann man sie verwenden, ohne Ihre Datenbank beschreiben zu müssen.

Das folgende sind einige Beispiele von Interwiki-Vorgaben, die voreingestellt (Wikipedia ist auch verwendbar, 1.10 und höher) verwendet werden können:

Präfix Ziel-URL (uniform resource locator) Anwendungsbeispiel
commons https://commons.wikimedia.org/wiki/ [[commons:MediaWiki]]
mediazilla http://bugzilla.wikimedia.org/ [[mediazilla:1209]]
meta https://meta.wikimedia.org/wiki/ [[meta:Main Page]]

Die vollständige Interwiki-Vorgabenliste liegt unter maintenance/interwiki.list.

Zu vollständiger Information zum Thema Verknüpfungen/Verweise von und zu Wikimedia-Projekten, siehe m:Help:Interwiki linking .

In einigen Installationen ist keines der folgenden vorinstalliert. In diesem Fall kann [[metawikipedia:Main Page]] weiterhelfen.

Auf eine neue Webseite in Interwiki verweisen

  • Interwiki-Verweise sind in der Datenbanktabelle interwiki eingetragen.
  • Um diese zu ändern muss die Datenbank beschrieben werden, wie unten gezeigt.
  • Die Interwiki extension erleichtert den Vorgang.

[1]

Wikipedia ist durch Vorgabe nicht vor der Version 1.10 verwendet.Man kann es und andere Projekte aber hinzufügen, wenn das gewünscht ist.

Die Beispiele hierunter zeigen, wie w: als Verknüpfung zur englischen Wikipedia eingerichtet wird.

Eine Zeile soll in dieser Form in die interwiki Tabelle eingegeben werden:

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

.

Einzelne Zeile

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

  • MySQL und PostgreSQL
MediaWiki versions: 1.10 – 1.16
INSERT INTO interwiki (iw_prefix, iw_url, iw_local, iw_trans) VALUES ('w', 'https://en.wikipedia.org/wiki/$1', 1, 0);

Neuere MediaWiki-Versionen erfordern einige Zusatzfelder, wie iw_wikiid.

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:

  • Die Datenbanktabelle interwiki exportieren
  • am Ende der Tabelle eine Zeile in der folgenden Form einfügen (die englische Wikipedia wird als Beispiel genommen):
('w', 'https://en.wikipedia.org/wiki/$1', 1, 0);
In der oben stehenden Anweisung MUSS der Strickpunkt ';' am Ende der Tabelle stehen, wie gezeigt. Am Ende irgendeiner anderen Zeile der Tabelle muss Nur ein Komma ',' stehen.
  • Die Datenbanktabelle interwiki importieren

Testen

Um die Konfiguration zu testen:

  • Gehe zu Deiner Seite (site),
  • einen Artikel mit folgendem Inhalt erstellen:
    [[w:Wikipedia:Village pump|]]
  • Das sollte einen Verweis zur 'Village pump'-Seite unter en.Wikipedia.org (mit der URL https://en.wikipedia.org/wiki/Wikipedia:Village_pump) zeigen.

Feld-Beschreibung

Im Detail sehen die Felder der interwiki Datenbanktabelle wie folgt aus:

  • iw_prefix: hier ist ein Präfix zu verwenden, wie er für einen Interwiki-Verweis verwendet wird, z.B. "wikipedia" für den Verweis zu Wikipedia.
    Präfixe müssen kleingeschrieben sein.
  • iw_url: die URL des Projektes eingeben, z.B. https://en.wikipedia.org/wiki/$1 für Wikipedia. $1 darf nicht vergessen werden, da es mit dem Namen des Artikels, auf den verwiesen wird, ersetzt wird ([[Wikipedia:Main Page]] verweist auf https://en.wikipedia.org/wiki/Main_Page).
    Wenn iw_url ein binäres BLOB-Feld ist (SVN Version, erscheint auch in Version 1.11.0, Fehler (bug)?) ist, wird dieses nicht direkt funktionieren. Die Eingabe muss binär erfolgen. Es gibt zwei mögliche Lösungen: 1. Die URL in einer einfachen Textdatei speichern und danach mit phpmyadmin importieren. 2. Eine SQL-Anfrage kann direkt eingegeben werden.
  • iw_local: wenn 1 gesetzt ist, wird Ihr Wiki auch externe Verweise der Form iw_prefix:title dorthin führen und nicht nur die der eigenen Seiten. Dies wird benötigt,wenn man auch Verweise von außerhalb des eigenen Wiki´s weiterleiten will. Oder andere Wikis nutzen Ihre Transwiki-Funktionen für enthaltene Transwiki-Verweise (wiew:en:fr:Wikipédia:Accueil). Siehe m:Help:Interwiki linking#Non-local interwikis.
  • iw_trans: "transwiki transclusion" - auf 1 setzen, wenn Seiten anderer Wikis als Vorlagen verwendet werden sollen. In denLocalSettings.php muss auch das $wgEnableScaryTranscluding = true gesetzt werden.
  • iw_api: URL zur MediaWiki API, z.B. https://en.wikipedia.org/w/api.php (optional).
  • iw_wikiid: Name der Datenbank des Wiki, wenn lokal verfügbar. Kann (später?) für Interwiki Verweise verwendet werden (optional).

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

Tools.svg 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.


Referenzen

  1. Die Verwendung von Extension:InterwikiExtension:Interwiki, stellt sicher, dass die Version 2.1 verwendet wird, die ein latentes Speicherproblem (caching latency problem) behebt.

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: dasselbe, wie oben "Adding More"
  • iw_trans: dasselbe, wie oben "Adding More"

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 Komma vor dem Präfix [[:de:Hauptseite]] gesetzt werden oder $wgInterwikiMagic wird auf "false" gesetzt.

Die Interwiki-Tabelle aus einem Wiki exportieren

Die Interwiki-Tabelle kann mit dem API:Meta Modul durch meta=siteinfo&siprop=interwikimap angefragt werden.

Das folgende JavaScript kann zur Erstellung einer SQL INSERT Anweisung verwendet werden, um die Interwiki-Tabelle zu befüllen, wenn man sich innerhalb des Wiki´s bewegt, aus dem die Information entnommen werden soll, indem man die Skriptanweisungen mithilfe eines Entwicklungswerkzeuges des Browsers einfügt oder die Anweisungen in Special:MyPage/<skinname>.js einsetzt und prüft:

function ExtractInterwikiMapTable() {
	$.getJSON(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);

Siehe auch