Mediawiki als CMS
Wir nutzen Mediawiki als CMS für unsere Dokumentation. Es gibt im SuperX-Modul Wissensbasis (KB) einen Konnektor für Mediawiki-Seiten, der die Daten einliest, in SuperX speichert und daraus eine Website im HTML-Format + PDF Datei exportiert.
Bluespice
Durch die Erweiterung "Bluespice" ist die Bearbeitung auch im Team mit Hochschulen möglich, Bluespice bietet einen Wysiwyg-Editor, der insbesondere bei Tabellen sehr nützlich ist. Eine allgemeine Doku dazu befindet sich hier:
https://de.wiki.bluespice.com/wiki/Inhalte_erstellen_und_ordnen
Installation von Bluespice
Zunächst muss man die nötigen Pakete installieren:
apt-get install -y apache2 libapache2-mod-php mariadb-server mariadb-client apt-get install -y php php-mbstring php-xml php-mysql php-curl php-gd php-tidy php-intl php-zip npm nodejs imagemagick
- Achtung
- wenn mysql bereits installiert ist, gibt es Probleme. Am besten daher deinstallieren, und mariadbinstallieren.
Dann starten wir mysql:
systemctl start mariadb
Dann richtet man die DB ein:
mysql CREATE USER wikiuser@localhost IDENTIFIED BY 'anfang12'; create database wikidb; GRANT ALL ON wikidb.* TO 'wikiuser'@'127.0.0.1' IDENTIFIED BY 'anfang12'; GRANT CREATE VIEW ON *.* TO 'wikiuser'@'localhost' ;
Dann legt man als root unterhalb von /var/www/html einen Ordner an, z.B. "wiki", und dann vergibt die Rechte:
chown -R www-data:www-data /var/www/html/wiki
Aktivierung des Editors
- Doku: https://www.mediawiki.org/wiki/Extension:TinyMCE
- Herunterladen:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/TinyMCE.git
- Dann als tgz Archiv packen und entpacken in /var/www/html/wiki/extensions
- Dann Datei anlegen
/var/www/html/wiki/settings.d/030-TinyMCE.php
mit dem Inhalt
<?php wfLoadExtension( 'TinyMCE' );
- Direkt danach kann man den Editor nutzen.
Aktivierung von draw.io
- Herunterladen:
git clone https://github.com/mgeb/mediawiki-drawio-editor
- Doku: Bluespice Anleitung, oder README.md im obigen Verzeichnis
- Kopieren Inhalt nach /var/www/html/wiki/extensions/drawio-editor
- Dann in LocalSettings.php die Zeile anfügen:
require_once("$IP/extensions/drawio-editor/DrawioEditor.php");
- Und in der Datei /var/www/html/wiki/includes/upload/UploadBase.php die Zeile
static $validNamespaces = [ ...., 'http://www.w3.org/1999/xhtml' ];
anfügen.
Weitere Konfiguration
Aufruf mit http://localhost/wiki/installcheck.php
- Dateigröße Bilder etc:
/etc/php/7.4/apache2/php.ini
upload_max_filesize = 50M post_max_size = 32M max_execution_time = 120 memory_limit = 256M
Nach Änderung
service apache2 reload
Besonderheiten für HTML-Export
Der visuelle Editor von Bluespice ist zwar ganz praktisch, aber nicht immer können wir den entstandenen Code im HTML-Export nutzen.
Grafiken
Dies passiert z.B. beim Hochladen von Grafiken. Der Bluespice Editor läft die Grafiken in einem Schritt hoch und speichert den Quellcode in der Wiki Seite. Das macht beim HTM-Export Probleme. Daher bitte Grafiken über den klassischen Mediawiki-Weg hochladen:
- Zuerst die Grafik hochladen mit der Spezialseite https://superxhosting.de/wiki/index.php/Spezial:Hochladen
- Dann die Grafik in den Quellcode einfügen mit dem Tag
[[Bild:Dateiname.svg|800px]]
Zum Anpassen des Layouts von Grafiken kann man ein paar Attribute verwenden, der Name ist selbsterklärend:
[[Bild:Makrobericht_erstellen_1.png|right|thumb|400px|Kopie erstellen]]
DrawIO
Fügen Sie ein Template ein namens
{{#drawio:ChartName}}
und speichern Sie es. Danach können Sie oben rechts auf "Bearbeiten" klicken und Sie erhalten einen visuellen Editor.
Beispiel:
Templates
Wir nutzen ein paar Templates, die immer wieder benötigten Code erstellen.
Article
Das Template Article liefert eine zweispaltige Box, wo in der linken (kleineren) Spalte ein Icon vorgesehen ist, und in der breiteren rechten Spalte ein Text. Beispiel:
{{Article_img_left |imgsrc=superx-logo.svg | text=Wir helfen, das Berichtswesen und Controlling in den Hochschulen zu verbessern bzw. zu erleichtern. Universitäten und Fachhochschulen können kostenlos von der SuperX-Projekthomepage die Software SuperX beziehen, ein Data-Warehouse für Daten aus der Hochschulverwaltung.}}
Das sieht dann so aus:
Sie können die Grafik auch mit einem Link versehen. Leerzeichen im Link-ziel müssen durch ein "_" ersetzt werden. Beispiel:
{{Article_img_left |imgsrc=APP.png| link=Memtext-Homepage-Redesigned#Modul_Bewerbungen|text=Modul Bewerbungen}}
Das sieht dann so aus:
![]() |
Modul Bewerbungen |
Beispiel:
![]() |
"Test-Untertitel |
---|---|
Modul Bewerbungen viel Text | |
Memtext-Homepage-Redesigned#Modul_Bewerbungen Bewerbungen |
Das Template kann beliebig viele Links mit Namen hinterlegen kann, die Konvention ist dann wiki-typisch z.B.
für interne Links:
| link=[[Memtext-Homepage_Entwurf#Mitglieder Mitglieder]]
für externe Links z.B.:
| link=[https://www.superx-projekt.de/doku/kern_modul/memtext_journal/f_SuperXEntwicklungslabor2024Q3.htm mehr...]
Das Trennzeichen zwischen Link und Link-Name ist das erste Leerzeichen nach dem Link.
Gallery
Die Gallery bietet eine horizontale Reihe von kleinen Grafiken mit Untertitel. Die Graifken wiederum können Links auf Unterkapitel bieten. Beispiel
<gallery> Icon_superx.png|Original-Icon von SuperX (Uni Karlsruhe) megaphone.svg|Aktuelles|link=SuperX-Homepage#Aktuelles download.svg|Zum Download-Bereich|link=SuperX-Homepage#Downloadbereich sx_users.svg|Aktuelle Projektgruppe|link=SuperX-Homepage#Zum_SuperX-Projekt </gallery>
Dies sieht dann so aus:
Für ein Beispiel mit Links siehe die SuperX-Homepage direkt am Anfang: SuperX-Homepage
ImageLink
Das Template ImageLink liefert inline eine Grafik, die mit einem Link hinterlegt ist. Beispiel:
Quellcode: {{ImageLink |imgsrc=MT20_Anfang.png| link=Memtext-Homepage-Redesigned#Der_Anfang|width=200px}}
Dies sieht dann so aus:
ImagePara
Das Template ImagePara liefert eine Grafik in einem leeren Absatz, die mit einem Rahmen versehen sind. Die Grafik ist mit einem auf sich selbst hinterlegt, zum Vergrößern. Beispiel:
Quellcode: {{ImagePara |imgsrc=MT20_Anfang.png|width=200px|caption=Wir feiern 20 Jahre}}
Dies sieht dann so aus:
ImageTile
Das Template ImageTile liefert eine Grafik umrandet von einer Kachel, und einem kurzen Text darunter. Beides ist mit einem Link hinterlegt. Beispiel:
Quellcode: {{ImageTile |imgsrc=superx-logo.svg | link=Memtext-Homepage | caption=Zur Memtext Homepage}}
Dies sieht dann so aus:
Man kann auch mehrere Tiles kombinieren:
Rechte
Generell kann jeder angemeldete Benutzer alle Seiten sehen. Wenn das nicht gewünscht ist wird im Kopf der Datei ein Element "pageacces" gesetzt, mit den jew. Gruppen, die die Seite sehen dürfen. Beispiel:
<bs:pageaccess groups="Bonn_UNI,Memtext" />
Wartungsscripte
Bilder hochladen
Wenn man auf einen Schlag eine Reihe Bilder hochladen möchte, kann man dies als root in /var/www/html/wiki/ ausführen z.B.
chmod -R a+rx /tmp/bilder sudo -u 'www-data' php maintenance/importImages.php /tmp/bilder
Es werden rekursiv alle Unterordner nach Bildern durchsucht und hochgeladen. Man kann das Script auch noch weiter parametrisieren, siehe Manual.