Extensions für das MediaWiki
Ich bin vom MediaWiki und den Möglichkeiten der Extensions begeistert. Die Programmierung einer Extension ist denkbar einfach und ich habe auch schon selbst einige Extensions selbst programmiert.
Inhaltsverzeichnis |
Was ist ein Wiki?
Das berühmteste Wiki ist das Wikipedia. Jeder kennt es und jeder hat es schon mal benutzt. Deutlich weniger Personen haben es schon editiert, obwohl auch das kinderleicht ist - zumindest wenn es darum geht einen Rechtschreibfehler zu korrigieren. Das MediaWiki ist die Grundlage, die PHP-Software, die ein Wiki wie das Wikipedia ermöglicht.
Was sind Extensions?
Extensions sind PHP-Dateien (im Verzeichnis "extensions"), die den Kern des MediaWiki erweitern. Sie fügen neue Features hinzu oder verbessern die Grundfunktionalitäten des MediaWiki. Extensions sind ein Hauptvorteil der Software "MediaWiki" beim Einsatz eines eigenen Wikis. Sie geben den Administratoren und den Wiki-Nutzern die Möglichkeit das Wiki an die eigenen Bedürfnisse anzupassen.
Ich habe das Original-Zitat frei übersetzt.
Ziel
Diese Extension soll von der Programmierung her einfach sein. Die normalen Zitate im Wikipedia sind mit Vorlagen realisiert, die im Standardumfang des MediaWiki nicht enthalten sind. Für Vorlagen gilt: "Voraussetzung ist die Extension ParserFunctions" (Quelle Wikipedia). Weil es nicht im Standardumfang enthalten ist, zeige ich die Programmierung einer Zitatbox als Beispiel für eine Extension.
Es muss nicht nur das MediaWiki angepasst werden ("LocalSettings.php"), man muss auch PHP programmieren und XHTML/CSS in PHP sowie das MediaWiki einbinden können.
PHP
<?php $wgExtensionFunctions[] = 'quote'; function quote() { global $wgParser; $wgParser->setHook('quote', 'quote_render'); } function quote_render($input, $args, $parser) { return '<div class="quotetop">' . htmlspecialchars($args['reference']) . '</div> <div class="quotemain">' . htmlspecialchars($input) . "\n" . '<span class="reference">(Quelle: <a href="' . $args['url'] . '" class="link-external" target="_blank">' . htmlspecialchars($args['reference']) . '</a>)</span></div>'; } ?>
Diese Webseite arbeitet mit dem mwCMS und kann somit auch Extensions verwenden. Deswegen wird unter "Customize mwCMS" eine einfache Extension erklärt.
CSS
In Arbeit


News
