Jump to content

Handbuch:Erweiterungen

From mediawiki.org
This page is a translated version of the page Manual:Extensions and the translation is 100% complete.

Mit einer Erweiterung kannst du anpassen, wie MediaWiki aussieht und funktioniert.

Während einige Erweiterungen von den MediaWiki-Entwicklern gepflegt werden, sind andere von Drittanbietern entwickelt worden. Infolgedessen haben viele Fehler, und es ist nicht garantiert, dass alle miteinander kompatibel sind. Einige werden auch nicht weiterentwickelt / gepflegt; und nicht alle Erweiterungen funktionieren mit allen MediaWiki-Versionen. Erweiterungen, besonders die als unsicher gekennzeichneten, sind daher nur auf eigenes Risiko einzusetzen. Wird eine Erweiterung verwendet, die Korrekturen an der Kernsoftware erfordert, sollte unbedingt vorher ein Backup der Datenbank erstellt werden. Dies hilft, das Risiko zu vermeiden, das Wiki zu zerstören.

Arten von Erweiterungen

Parser Tags

Parser Tags erweitern die eingebaute Wiki-Sprache um zusätzliche Fähigkeiten, wie z.B. einfache Textverarbeitungsfunktionen oder mächtige Funktionen zur Informationsaufbereitung.

Parserfunktionen

Parserfunktionen sind spezielle Funktionen in der Wiki-Markup-Syntax welche mit anderen Wiki-Elementen in der Seite "interagieren" können und in weiterer Folge eines spezielle Ausgabe liefern.

Hooks

Hooks erlauben die Ausführung von eigenem Code, wenn ein bestimmtes Ereignis (z.B. das Speichern einer Seite oder die Anmeldung eines Benutzers) eintritt.

Spezialseiten

Spezialseiten sind Seiten, die von der Software bei Bedarf generiert werden, um eine bestimmte Funktion auszuführen.

Oberflächen

Skins erlauben Benutzern das Aussehen von MediaWiki anzupassen.

Magische Wörter

Magic Words sind eine Technik, um mehrere Wiki-Texte einer einzelnen ID zuzuordnen, welche wiederum einer Funktion zugeordnet ist.

API

MediaWiki stellt eine Aktions-API zur Verfügung, ein Webservice, welches den Zugriff auf einige Wiki-Features wie Authentifizierung, Seitenbearbeitung und Suche erlaubt.

Seiteninhaltsmodelle

Die in MediaWiki 1.21 vorgestellte ContentHandler ermöglicht es, Wiki-Seiten auf Basis von anderen Daten als dem Wikitext, wie z.B. JjSON or Markdown, zu erstellen.

Authentifizierung

MediaWiki stellt SessionManager und AuthManager zur Verfügung, zwei Authentifizierungsframeworks zur Verbesserung der Sicherheit durch Kundenauthentifizierungsmechanismen.

Erweiterungen finden

Erweiterungen durchsuchen

Du kannst Kategorie:Erweiterungen nach Kategorie durchsuchen, um die gesamte Palette der bereits geschriebenen Erweiterungen anzuzeigen. Informationen zum Installieren dieser Erweiterungen oder zum Schreiben eigener Erweiterungen findest du unten.

Überprüfen installierter Erweiterungen

Nur jemand mit Verwaltungszugriff auf das Dateisystem auf einem Server, kann Erweiterungen für MediaWiki installieren, jedoch kann jeder überprüfen, welche Erweiterungen auf einer Instanz von MediaWiki durch Zugriff auf den Spezial:Version-Artikel aktiv sind. Zum Beispiel sind diese Erweiterungen in der deutschen Wikipedia aktiv.

Beliebte Erweiterungen

Es existieren eine Reihe von Möglichkeiten, beliebte Erweiterungen zu finden.

Die erste Gruppe sind diejenigen, die mit MediaWiki gebündelt sind (eine Liste, die regelmäßig überprüft wird und zu der jeder einen Vorschlag einreichen kann).

Bei Erweiterungen, die über den ExtensionDistributor -Mechanismus von MediaWiki.org heruntergeladen werden, werden einige Statistiken gesammelt. Die 15 am häufigsten heruntergeladenen Erweiterungen sind bei Special:ExtensionDistributor aufgelistet, und die Anzahl der Downloads wird in der Infobox der jeweiligen Erweiterung angezeigt. Beachte, dass diese Zahlen keine alternativen Möglichkeiten zur Installation von Erweiterungen berücksichtigen, wie z.B. über Git oder Composer.

Eine dritte Möglichkeit ist, die Anzahl der Wikis, auf denen Erweiterungen installiert sind, bei WikiApiary zu überprüfen. Dies hat den Vorteil, dass es tatsächliche Installationen und nicht nur Downloads abbildet (d.h. es fragt die APIs des Wikis ab), ist jedoch zudem (Stand 2023) nicht vollständig auf dem neuesten Stand. Installationen auf privaten Wikis werden zudem nicht mitgezählt.


Installieren einer Erweiterung

Für weitere Hinweise siehe auch Manual:Extensions/Installation and upgrade

MediaWiki ist bereit, Erweiterungen direkt nach Abschluss der Installation zu akzeptieren. Gehe folgendermaßen vor, um eine Erweiterung hinzuzufügen:

  1. Bevor du anfängst
    Ein paar Erweiterungen erfordern die Installation eines Patches. Viele von ihnen stellen auch für die Installation entworfene Instruktionen zur Verfügung, konzipiert für den Einbau mit UNIX-Befehlen. Du benötigst Shell-Zugriff (SSH), um diese Befehle einzugeben, die auf den Hilfeseiten der Erweiterung aufgeführt sind.
  2. 'Herunterladen ihrer Erweiterung'.
    Extension Distributor hilft Ihnen, die beliebtesten Erweiterungen auszuwählen und herunterzuladen.
    Erweiterungen werden in der Regel als Modulpakete verbreitet. Sie befinden sich im Allgemeinen in einem eigenen Unterverzeichnis von $IP /extensions/. Eine Liste der Erweiterungen, die in dem Git-Repository der Wikimedia gespeichert sind, findet man unter git:mediawiki/extensions. Einige Erweiterungen verwenden keine Versionskontrolle und werden nicht empfohlen.
    Einige Erweiterungen sind auch in Bundles, composer oder Paket-Repositories verfügbar.
    Es wird empfohlen, die README-Datei vor der Installation zu lesen. Sie enthält normalerweise wichtige Informationen zur Konfiguration.
  3. Installiere deine Erweiterung.
    Füge am Ende der LocalSettings.php -Datei Folgendes hinzu:
    wfLoadExtension( 'ExtensionName' );
    
    Diese Zeile zwingt den PHP-Interpreter, die Erweiterungs-Datei zu lesen und damit MediaWiki zugänglich zu machen.
    Einige Erweiterungen können mit Wartungsskripten in Konflikt geraten, beispielsweise wenn sie direkt auf $_SERVER zugreifen (nicht empfohlen).
    In diesem Fall können sie bedingt gepackt werden, so dass Wartungsskripte trotzdem laufen können.
    if ( !$wgCommandLineMode ) {
       wfLoadExtension ( 'ExtensionName' );
    }
    
    Das Wartungsskript importDump.php wird bei jeder Erweiterung scheitern, welches maßgeschneiderte Namensräume erfordert, die innerhalb des bedingten oberhalb inbegriffen sind, wie zum Beispiel Erweiterung:Semantic MediaWiki , Erweiterung:Seitenformulare .
Stelle sicher, dass die erforderlichen Berechtigungen für Erweiterungen gesetzt sind!
Während dieses Installationsverfahren für die meisten Erweiterungen ausreichend ist, erfordern einige ein anderes Installationsverfahren. Einzelheiten findest du in der Dokumentation deiner Erweiterung.
Wenn du Konfigurationsvariablen in LocalSettings.php ändern möchtest, musst du dies normalerweise nach dem Einschließen der Erweiterung tun. Sonst werden die in der Erweiterung definierten Vorgabewerte ihre Einstellungen überschreiben.

Aktualisieren einer Erweiterung

Einige Erweiterungen müssen immer aktualisiert werden, wenn du MediaWiki aktualisierst, während andere mit mehreren Versionen funktionieren. Um auf eine neue Version einer Erweiterung zu aktualisieren:

  1. Die neue Version der Erweiterung herunterladen
  2. Ersetze alle Erweiterungsdateien im Verzeichnis extensions/ExtensionName durch die neuen Dateien. Entferne nicht die in LocalSettings.php vorhandene Erweiterungskonfiguration
  3. Wenn die Erweiterung Änderungen an der MediaWiki-Datenbank erfordert, musst du das Wartungsskript update.php ausführen. Die meisten Erweiterungen werden erwähnen, ob das Skript ausgeführt werden muss oder nicht. (Führe eine Sicherung deiner Daten durch, bevor du das Skript ausführst). Wenn du keinen Zugriff auf die Kommandozeile hast, kannst du auch den Web Updater verwenden.
Diese Anleitungen treffen für 99% der Erweiterungen zu. Wenn die spezifische Erweiterung, die du aktualisierst, Anweisungen hat, die von diesen abweichen, solltest du wahrscheinlich die Anweisungen der spezifischen Erweiterung befolgen

Deinstallieren einer Erweiterung

Entferne die Zeile aus LocalSettings.php mit dem Namen der Erweiterung, um sie zu deinstallieren:

wfLoadExtension( 'ExtensionName' );
  • Du musst alle Zeilen entfernen, die sich auf die Konfiguration der Erweiterung beziehen.

Siehe auch