Im Rahmen der Blogparade zum Start des neuen fokus.cms, welches unter Torben Leuschner und Florian Petri entsteht und bis zum 1. August fertig sein soll, werde ich nun hier meine Gedanken zu diesem Thema niederschreiben.

Die Installation

Diese sollte so einfach wie möglich sein, ohne viele Abfragen, was denn alles eingestellt werden soll, und was nicht. Also, Datenbank erstellen, Admin einrichten, nötige Datei- und Verzeichnisrechte setzen, fertig.

Gerade was die Datei- und Verzeichnisrechte angeht, werden diese von vielen CMS nicht gesetzt und dann dadurch entweder die Installation aufgehalten, weil man diese von Hand setzen muss, bevor es weiter geht, oder man muss sie hinterher setzen. Beides finde ich etwas unglücklich gelöst.

Die Verwaltung

Also, das Backend, die Schaltzentrale eines CMS. Auch hier sollte alle so simpel wie möglich sein, denn letztlich muss der Kunde damit auch umgehen können. Also nicht erst lange rumklicken um eine neue Seite zu erstellen, eventuell das Menü zu ändern, Links zu einer Liste hinzuzufügen und so weiter.

Ich bringe hier absichtlich den Kunden in diesem Abschnitt zur Sprache, denn der ist es letztlich, der dort seine Inhalte verwaltet und somit die Seite mit gestaltet. Und da Kunden – ohne jemandem zu nahe treten zu wollen – erfahrungsgemäß nicht unbedingt firm im Umgang mit solchen Systemen sind, muss dies so einfach und so intuitiv wie nur möglich sein. Das verringert schlichtweg den Supportaufwand. Somit liegt es also auf der Hand, dass hier alles übersichtlich angeordnet werden muss.

Die Erweiterbarkeit

Auch dies, ein ganz wichtiger Punkt. Erweiterbarkeit durch Themes, Layouts, Styles, Plugins, Funktionen, Widgets etc. pp. Egal wie man es nennen möchte, ein gutes CMS muss schnell und einfach zu erweitern sein. Ob es darum geht, ein angepasstes Layout zu wählen, oder durch Plugins neue Funktionen zu gewährleisten. Es muss möglich sein, das CMS ohne Eingriffe in das Kernsystem, welche dann bei Updates wieder weg sind, zu personalisieren.

Dabei sollte nach Möglichkeit keine dem CMS eigene Scriptsprache zum Zuge kommen, sondern ein vernünftiges System, welches Code von Markup trennt. Mich würde es zum Beispiel freuen, wenn für Themes ein Templatingsystem wie zum Beispiel Smarty Template zu Einsatz käme. So wird der PHP-Code direkt vom HTML-Code getrennt und es ist ein wesentlich aufgeräumteres Arbeiten für die Entwickler neuer Plugins und/oder Themes.

Die Sicherheit

Natürlich ist dies einer der wichtigsten Punkte. Immer wieder liest man in den Newstickern, dass in System XYZ diese und jene Sicherheitslücke gefunden wurde. Dies ist bei keinem System ausgeschlossen. Ein zu 100% sicheres und lückenfreies System gibt es meines Erachten nach nicht. Daher ist es wichtig, dass Sicherheitslücken die erkannt wurden so schnell wie möglich gefixt und gepatcht werden. Hier sind also die Entwickler des CMS in der Pflicht gegenüber den Nutzern. Auch sollte das CMS nicht gleich von vorne herein gravierende Sicherheitslücken aufweisen und auch nach Möglichkeit auf die Ausführung unsicherer Methoden – wie zum Beispiel shell_exec(); bei PHP – verzichten.

Nutzereingaben, egal welcher Art, müssen validiert werden. Ob dies nun bei Kontaktformularen, Kommentarformularen oder im Editor des Backends selbst ist. Auch sollten die Links, welche oben im Browser stehen geprüft werden, denn dort ist ebenfalls ein Eingriff/Angriff in das System möglich. Also sollte das CMS in der Lage sein, Schadcode welcher über Links eingeschleust werden soll zu erkennen und zu neutralisieren.

Die Standards

Auch die geltenden Webstandards sollten natürlich Beachtung finden. Will sagen, das CMS sollte einen möglichst validen Code generieren, welcher eine breite Unterstützung an Browsern gewährleistet. Es nützt nichts, wenn die Seiten nur in einem oder zwei Browsern gut aussehen und in anderen wieder nicht. Stichwort Crossbrowserkompatibilität. Natürlich sollte man es nicht übertreiben, es ist nicht nötig völlig veraltete Browser zu unterstützen, ich denke es ist bekannt von welchen ich hier rede :-)

Dabei dürfen natürlich auch  moderne Webtechniken wie jQuery, Ajax und Co nicht außen vor gelassen werden. Verzichten sollte man hingegen auf proprietäre Techniken wie zum Beispiel Flash. Braucht man meiner bescheidenen Meinung nach nicht mehr wirklich.

Einhergehend mit der Unterstützung dieser Standards ergibt sich natürlich auch ein gewisses Maß an SEO, aber dazu sollen die SEOs selbst was sagen, da halte ich mich raus. Schwarze Magie und so :-)

Die Standardfunktionen

Natürlich sollte ein CMS auch ein gewisses Maß an Funktionen schon mal von sich aus mitbringen. Ich denke, ich muss diese hier nicht alle aufzählen, aber ich möchte die für mich Wichtigsten mal genannt haben.

Dazu zählt meines Erachtens nach auch, dass Links nicht irgendwelchen cryptischen Mustern folgen, sondern die Struktur vom Nutzer frei gewählt werden kann. Eine Erkennung von 404-Seiten und somit auch die Ausgabe einer Solchen, auf der die notwendigen Informationen enthalten sind inklusive der Möglichkeit die Seite zu durchsuchen ober durch ein Menü zu den wichtigsten Punkten der Seite zu kommen.

Der Editor im Backend sollte sowohl als WYSIWYG als auch als reiner Text/HTML-Editor nutzbar sein. Somit spricht man ein recht breites Publikum an Nutzern an. Mit dem Editor verbunden natürlich verschiedene Statis des jeweiligen Artikels. Also Entwurf, Privat, Öffentlich und so weiter.

Auch die Mehrspachigkeit sollte von Anfang an unterstützt werden. Ein CMS wird nicht nur in einer Sprache angeboten, sondern in mehreren. Somit sollte auch der Inhalt der generierten Seite in mehreren Sprachen angeboten werden können.

Nutzerverwaltung mit flexibler Einstellung von Benutzergruppen und deren Rechten. Eine Webseite wird nicht immer nur von einer Person betreut. So sollte man Nutzergruppen erstellen und bearbeiten können. Diesen Gruppen und den Nutzern unabhängig Rechte einräumen und zuweisen können.

Der Einsatzbereich

Ein gutes CMS lässt sich für viele Bereiche Einsetzen. Egal ob es nun eine „normale“ Webseite werden soll, ein Blog oder gar eine Community. Natürlich ist es bei spezialisierten Bereichen, wie zum Beispiel einer Community, immer etwas schwierig, aber ein gewisser Grundumfang sollte vorhanden sein, so dass es ohne große Schwierigkeiten möglich ist, dieses durch den Einsatz von Erweiterungen zu ermöglichen.

Das Fazit

Dies sind so meine Gedanken zu diesem Thema. Es ist mir bisher kein CMS bekannt, welches überall einsetzbar ist. Jedes CMS auf dem Markt hat seine Stärken und Schwächen und darin begründet auch seinen Einsatzbereich. Ich denke, es wird auch in Zukunft kein CMS geben, mit dem alle Einsatzmöglichkeiten abzudecken sind. Jedoch gibt es einige Systeme, die dem schon sehr nahe kommen, ohne dabei zu umständlich zu werden. Andererseits gibt es auch Systeme, die gerne alles können möchten und dadurch einfach nur unübersichtlich geworden sind. Ich nenne hier absichtlich keine Namen, da ich hier keine persönliche Wertung der verschiedenen Systeme abgeben möchte.

Freuen jedoch würde ich mich, wenn es in naher Zukunft ein CMS gibt, welches einen Großteil der oben genannten Gedanken erfüllt und vielleicht noch mit der einen oder anderen Idee zu überraschen weiß.

Nun seit ihr am Zuge

Natürlich würden mich auch eure Gedanken und Ideen zu diesem Thema interessieren. Was muss für euch ein CMS können, oder welche Funktionen dürfen nicht fehlen, auf was kann man getrost verzichten?

Bildquelle des Artikelbildes: compudrom digital illustration

3 Meinungen zu “Was muss ein CMS bieten

  1. Guten Morgen H.-Peter,
    vielen lieben Dank für deine Teilnahme an unserer Blogparade. Schön zu sehen, dass du Schwerpunkte ähnlich siehst wie wir.

    Zum Punkt „Erweiterbarkeit“:
    Auf ein Templating-System wie Smarty haben wir bei fokus bewusst verzichtet. Wir glauben, WordPress ist auch gerade deshalb so beliebt, da es für Entwickler eine sehr leicht zu lernende Syntax bereitstellt. Daran haben wir uns orientiert. Sämtliche Funktionen stehen über PHP-Funktionen bereit, die sich über ein Parameter-Array anpassen lassen.

    Herzlichste Grüße,
    Torben Leuschner (fokus-Team)

  2. Holla Torben,

    Kein Thema :-)

    Aber zum Templating-System, genau soetwas vermisse ich bei WordPress. Allein schon um in Themes den Code vom Markup zu trennen und somit die Dateien saubrer und übersichtlicher zu halten. Auch bei Plugins, welche irgendwelches Zeug ausgeben wäre ein solches Templating-System teilweise wirklich schön. Dabei geht es mir nicht um ein bestimmtes System, sondern einfach nur darum, das diese Trennung da ist. Smarty habe ich aus rein privater Natur erwähnt, da es doch recht einfach und dennoch mächtig ist. Bei S9y ham se Smarty das dabei, werd ich demnächst mal antesten. Natürlich werde ich auch euer CMS testen, sobald es verfügbar ist.

    Ich persönlich finde es einfach grauenvoll, wenn HTML und PHP-Code innerhalb einer Datei mehrfach gemischt werden. Das macht es sehr unübersichtlich und nicht gerade performant. Ich hab das auf meiner eignen Webseite (ja sie ist nicht unbedingt aktuell) mal getestet. Diese war nach Einführung des Template-Systems wesentlich schneller. Spürbar schneller, was bei einer solch kleinen Seite schon etwas heißen will.

    Aber nun ja, das ist mein persönliches Empfinden und meine persönliche Meinung was in dem Artikel geschrieben steht und somit natürlich keinerlei Richtlinie.

    In diesem Sinne bin ich gespannt, was euer CMS so drauf hat :-)

    Grüße
    Peter

Schreibe einen Kommentar

Ihre Email-Adresse wird nicht veröffentlicht. Pflichtfelder sind durch * markiert.

Sie können folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>