CSS von MoinMoin lokal anpassen
Ich habe mehrere Anfragen erhalten, das vorgegebene Layout (CSS) vom
MoinMoin-Wiki anzupassen. Die vom Projekt vorgeschlagene Anleitung sagte allerdings
nicht, zu, da man damit in das MoinMoin-System direkt eingreifen muß -
und das liegt unterhalb von /usr
und damit in der Hoheit
der Distribution und nicht des lokalen Administrators.
Gesucht wurde daher eine andere Möglichkeit, auf das CSS Einfluß zu nehmen. Am besten wäre gewesen, man könnte in der Konfiguration zusätzliche Codezeilen in den Kopf der Seiten einfügen. Vielleicht gibt es diese Möglichkeit in einer zukünftigen Version ja.
Da das bisher nicht möglich ist, verwenden wir einen kleinen Trick. Ausgeliefert werden die Wiki-Seiten sowieso über einen Apache-Webserver und der bietet vielfältige Möglichkeiten. Es wird dort ein Alias eingefügt, der auf eine PHP-Datei verweist, die für eine CSS-Datei die ursprüngliche Datei einliest und erweitert.
Die Konfiguration des Webservers sieht wie folgt aus:
<VirtualHost wiki.domain.de> Alias /moinstatic/modern/css/screen.css /var/www/wiki-localcss.php </VirtualHost>
Die PHP-Datei sieht dann wie folgt aus:
<?php> header('Content-type: text/css'); $css = file_get_contents('/usr/share/moin/htdocs/modern/css/screen.css'); echo $css . "\n"; echo <<<EOC #pageinfo { float: none; text-align: right; } table.navigation { float: none; } EOC;
Hier wird gleichzeitig die Navigation der Kindseiten nach links gezogen und die Seiteninformationen nach rechts geschoben.