Was ist ein CMS?

Das Lied MFG der Fantastischen Vier ist ziemlich anspruchsvoll. Der Text besteht mit wenigen Ausnahmen aus einer Aneinanderreihung von dreistelligen Buchstabenkombinationen. Abkürzungen, die unser Leben in fast allen Bereichen beherrschen. Dass man 3 Minuten und 35 Sekunden lang solche Abkürzungen vortragen kann und fast jeder Zuhörer sie versteht, zeigt klar die Verbreitung. Auch wenn man die Langform zur Abkürzung kennt, bedeutet das aber immer noch nicht, dass man auch weiß, was gemeint ist. Ein solches Beispiel ist CMS. Eine Abkürzung über die man bei der Gestaltung von Websites häugfig stolpert. Was ist ein CMS? Hier die Antwort auf diese Frage.

Content Management System

CMS steht für Content Management Sytem. Also ein System, mit dem man Inhalt verwalten kann. Eingesetzt wird ein solches System auf einer Website. Der User sieht den Inhalt, wenn er die Seite aufruft. Es gibt aber auch einen versteckten, passwortgesicherten Bereich, in dem man diese Inhalte verwalten kann. Diese Struktur nennt man Frontend und Backend. Am Frontend, also der Seite, die der User zu sehen bekommt, wird der Inhalt dargestellt. Im Backend, der Rückseite, die nur der Administrator sieht, hat man Zugriff auf verschiedene Funktionen. Im Backend kann man die Inhalte nicht nur erstellen, sondern auch das Erscheinungsbild und viele andere, für den User unsichtbare Dinge, beeinflussen.

Was ist ein CMS? auf gemenet.de
WordPress ist ein CMS, das auch auf gemenet.de läuft

Das Backend

Betreibt man eine Website, dann arbeitet man heute in erster Linie im Backend. Das Frontend, also die Seite selbst, sieht man sich nur an, wenn man das Ergebnis prüfen möchte. Die Grundlage für das CMS sind im Wesentlichen zwei Komponenten. Einerseits ist es die Datenbank in der alle Informationen, also Inhalt und Konfiguration gespeichert werden. Andererseits ist die Software des CMS, die Frontend und Backend bietet. Um die Funktionsweise und das Zusammenspiel zu verstehen, muss man zuerst das Prinzip einer dynamischen Website verstehen.

HTML & Co.

Ein Browser interpretiert HTML. HTML ist eine Beschreibungssprache, mit der definiert wird, was wo und in welcher Form auf der Website angezeigt wird. Ergänzt wird HTML durch CSS und verschiedene Scriptsprachen, in der Regel Javascript. CSS definiert das Erscheinungsbild von Elementen. So kann man definieren, dass eine Überschrift immer dieselbe Größe hat und in einer entsprechenden Schriftart erscheint. Das kann man zwar auch im HTML machen, muss das dann aber bei jeder Überschrift wiederholen. Bindet man eine CSS Datei ein, in der Klassen definiert sind, dann muss man bei jedem Element im HTML nur noch diese Klasse definieren. Danach befolgt der Browser die Darstellung, die in CSS festgelegt wurde. Eine statische Website besteht also aus einer, oder mehreren HTML Dateien, die jedes Element auf der Website beschreiben. Über CSS, das sich in einer eigenen Datei, oder auch direkt in der HTML Datei befindet, sorgt für das Aussehen. Bei einer statischen Website liegen die Daten als Datei auf der Festplatte des Servers.

Was ist ein CMS? auf gemenet.de
PHP mit dem Elefanten als Logo ist im Internet allgegenwärtig

Dynamische Websites

Findet man eine Datei, namens index.html im Verzeichnis der Website, dann wird diese geladen, wenn ein User die Seite aufruft. Änderungen erfolgen direkt in der Datei. Bei einer statischen Website liegen die Informationen also in einer Datei auf dem Server. Anders ist das bei einer dynamischen Website. Hier werden die Daten erst dann zusammengestellt, wenn ein Browser eine Seite aufruft. Eine gängige Scriptsprache für dynamische Websites ist PHP. PHP wird am Server ausgeführt, wenn man die Seite aufruft und generiert Ausgaben, die dann zum Client, also zum Browser des Besuchers ausgeliefert werden. Statt also „Hallo Welt“ in eine Datei zu schreiben, steht in einer PHP-Datei „echo ‚Hallo Welt‘;“. Wird das PHP Script ausgeführt, dann kommt zwar auch „Hallo Welt“ an, aber der Inhalt wurde dynamisch erstellt.

Warum das Ganze?

Der Vorteil einer dynamischen Seite ist, dass sie auf Eingaben und Umgebungsvariablen reagieren kann. So kann das Script beispielsweise bis 10h Vormittag „Guten Morgen“ ausgeben und danach „Guten Tag“. Das kann eine statische Datei nicht. Richtig Sinn macht es aber erst dann, wenn die dynamische Website mit einer Datenbank zusammenspielt. Hier kann man Daten strukturiert speichern. Im Prinzip ist eine Datenbank eine Summe an Tabellen. Der Vorteil ist, dass man schnell Informationen findet, weil es spezielle Abfragesprachen gibt. Mit SQL kann man eine Datenbankabfrage erstellen. So kann man beispielsweise abfragen, was in der Tabelle Beiträge unter dem Namen Startseite gespeichert wurde. Das PHP Script wird vom User gestartet, sucht sich aus der Datenbank das, was sie anzeigen soll und generiert eine HTML Ausgabe. Damit braucht man nur eine einzige Datei, kann aber jede Millisekunde einen anderen Inhalt anzeigen.

Was ist ein CMS? auf gemenet.de
WordPress ist mit rund 60% aller Webseiten weltweit der unangefochtene Marktführer

Was ist ein CMS?

Ein CMS arbeitet genau mit dieser Technik. In einer Datenbank liegen die Inhalte und das CMS verwaltet sie. Es speichert die komplette Menüstruktur in der Datenbank und weiß, wie es sie anzeigen soll. Erstellt man einen Beitrag, dann nutzt man einen Editor, der ermöglicht den Inhalt grafisch zu bearbeiten und ihn anschließend in der Datenbank zu speichern. Ein CMS ermöglicht also, ohne sich Gedanken über das Aussehen, oder die technischen Hintergründe zu machen, Inhalte einer Website zu erstellen. Es bietet darüber hinaus die Möglichkeit, das Design der Website zu verändern und schafft damit eine recht einfach zu bedienende Oberfläche, mit der eine komplette Website gestaltet und befüllt werden kann.

Beliebte CMS Systeme

Betreibt man ein Blog, dann nutzt man mit einer sehr hohen Wahrscheinlichkeit das CMS WordPress. Das System wird kostenlos zur Verfügung gestellt und ist das am weitesten verbreitete CMS System. Auf dem zweiten Rang findet sich Joomla!. Die beiden Systeme bieten annähernd dasselbe. Einen Vergleich dazu werde ich in einem meiner nächsten Beiträge verfassen. WordPress ist in den meisten Fällen die erste Wahl. Es ist leicht verfügbar und bietet umfangreiche Gestaltungsmöglichkeiten. Hat man keine Erfahrung, ist WordPress für den Einstieg ideal. Joomla! hat allerdings auch seine Berechtigung. Für fortgeschrittene Anwender bietet es dieselben Möglichkeiten und hat einige Stärken, die es von WordPress absetzen.