CMS
Ein Content-Management-System (kurz CMS) ist eine Software zum „Verwalten“ von Inhalten und deren Präsentation.
- Content steht für beliebige Inhalte (Text, Bilder, Videos) die in IT Systemen gespeichert werden.
- Management steht für die Verwaltung, Verarbeitung (Ausgabe, Präsentation) und Kontrolle (Berechtigungen) der obigen Inhalte.
- System steht für, nun ja, System aus Programm, Datenbank und Webserver.
Heute wird mit CMS meist ein Web-Content-Management-System (kurz WCMS, oder WMS) bezeichnet, im Unterscheid zum ECM (Enterprise-Content-Management).
Diese lassen sich grob in 2 „Bereiche“ unterteilen, die bequemer Weise beide über einen Internetzugang mit einem Browser zu erreichen sind:
- Das Backend (Passwort geschützt) indem Personen die Inhalte erstellen, verändern oder löschen können.
- Das Frontend ist nichts anderes als die Ausgabe dieser Inhalte als HTML Seiten (durch CSS und JS unterstützt).
Inhalt:
Funktion
Es geht primär darum, Webseiten zu erstellen. „Früher“ geschah dies „irgendwie“ (siehe unter Alternativen) lokal auf einem Rechner, und dann wurde die fertige neue Seite per FTP auf den Webserver hochgeladen.

Mit einem CMS (das auf einem Webserver läuft) arbeitet man online mit einem Browser um neue Seiten zu erstellen (Backend). Nach speichern und „Freigabe“ liegt der Text in einer Datenbank, und wird „publiziert“.
Nebenbei kümmert sich das CMS mehr oder weniger automatisch um die Anpassung des Menüs (Navigation) sowie um andere Kleinigkeiten (Aktualisierung der Rubrik „letzte Artikel“, etc.).
Grundlagen
Was ist Content-Management?
Mit Content-Management wird die vom Layout und Darstellung getrennte Verwaltung von Inhalten bezeichnet. Content setzt sich aus der Substanz, also Text, Bild und Audio- oder Video-Informationen, sowie den Metadaten, wie Autor, Erstelldatum oder Veröffentlichungszeitraum zusammen. Diese Informationen werden in Datenbanken gespeichert und können so unabhängig vom Layout, also vom Erscheinungsbild, verwaltet werden.
Durch die Ablage der Daten in einer Datenbank können diese in unterschiedlichen Formaten dargestellt und verwendet werden (HTML, WAP, XML, PDF, E-Mail). Über eine Benutzeroberfläche ist zudem die Verwaltung der Inhalte einfach und effizient möglich. Kenntnisse in einer Programmiersprache sind i.d.R. nicht erforderlich.
Was gehört zum Content-Management?
Neben der Verwaltung der Inhalte ist ein Benutzer- und Rechte-Management nötig. So können Arbeitsprozesse (Workflows) definiert und abgebildet werden. Der Zugriff auf die unterschiedlichen Inhalte wird über Zugriffsrechte geregelt. So kann bestimmt werden, welche Benutzer (Redakteure) Inhalte erstellen, editieren oder löschen dürfen.
Was ist Workflow-Management?
Unter Workflow-Management versteht man das Abbilden von Arbeitsprozessen. Im Zusammenhang mit Content-Management-System ist meist die Definition von Veröffentlichungsabläufen gemeint. Über einen Workflow kann beispielsweise die Erstellung einer Pressemeldung Schritt für Schritt festgelegt werden. Es wird festgeschrieben, wann welche Benutzer(-gruppen) welche Aufgaben oder Aktionen erledigen dürfen oder müssen. Das Workflow-Management ist an die Benutzer- und Rechteverwaltung angelehnt.
Vorteile
Content Management Systeme wurden aus mehreren Gründen beliebt:
- Technische Hilfestellung wie Versionsführung der Texte, WYSIWYG-Editor, Mehrsprachigkeit der Oberfläche im Backend, Benutzerverwaltung mit Berechtigungskonzept.
- Zur Erstellung einer Internetpräsenz waren keine HTML, CSS oder Programmiersprachen Kenntnisse erforderlich, zumindest nicht nachdem das CMS einmal „aufgesetzt“ war.
- Trennung von Inhalt und Präsentation (Design, Layout), siehe weiter unten.
- Plug-Ins (Extension, Add-On): das CMS liefert das „Grundgerüst“ und Programmierer entwickeln dann „Erweiterungen“ die die Funktionalität in bestimmten Bereichen ausbauen. Zum Beispiel SEO-Plug-Ins (die sich u.a. um die Meta-Daten eine Seite kümmern), Bilder-Galerie Plug-Ins, Shop Plug-Ins, etc.
- Themes: Solche liefern als sogenannte Templates das Layout der Seiten, sowie allgemeine Formatierungen (Überschriften, Tabellen, Listen, Links, etc.).
- Fast immer „Open Source“: GNU General Public License
- In Skriptsprachen wie PHP, Perl, Python geschrieben. Unterstützung der weit verbreiteten DB MySQL (ebenfalls Open-Source-Software).
- Engagierte Online-Community
Trennung von Inhalt und Präsentation
Ein CMS speichert nicht den HTML Code der erstellten Seiten, sondern erzeugt ihn zur Laufzeit aus den einzelnen Bestandteilen: Texte, Bilder, Template, etc.
Aus Architektur Sicht eine ganz famose Idee. Aus den in der Datenbank abgelegten Text (für jede URL = Unterseite) meistens genau einer, baut das CMS eine komplette Webseite, mit Hilfe seiner inneren Logik und des Templates.
Da sich HTML und CSS Spezifikationen immer noch ändern (wenn auch nicht so gravierend wie noch vor 15 Jahren), reicht es den Kern des CMS und / oder das Template anzupassen, und Schwups, haben alle Unterseiten z.B. statt des alten HTML tag (depriciated) das neue. Auch neue Implementierungen (wie z.B. das für responsive Design unerlässliche meta-tag „viewport“ ) lassen sich so sehr einfach umsetzen.
Multimedia
Die Texte liegen in einer Datenbank. Bild, Video, Audio, PDF, xls Dateien nicht. Diese werden in einem oder mehreren Unterordern (häufig „uploads“ genannt) innerhalb des, auf dem Webserver installierten CMS, gespeichert, und können vom lokalen Rechner, über das Backend per Drag & Drop dort abgelegt werden.
Aus SEO Sicht ist dieses Vorgehen suboptimal, da u.U. sehr wichtige Inhalte einer Unterseite, unter einer völlig anderen URL abgelegt werden.
Nachteile
Sicherheits-Lücken:
alle der bekannteren CMS hatten bereits mehrfach mit Sicherheitsproblemen zu kämpfen. In der Tat ist es so, das Hacker sich fast ausschließlich auf das am weitesten verbreitete CMS, WordPress, stürzen. Damit verbunden ist die quasi die Pflicht zu regelmäßigen Updates, mit vorherigem BackUp.
Stabilität:
Die einzelne Content-Management Systeme sind vom Kern her sehr stabil. Nur gibt es so gut wie keine Installation, die ohne Plug-Ins und Themes auskommt. Und diese werden nicht einmal annähernd in jeder Kombination getestet, und treten sich schon mal gegenseitig auf die Füße.
Ladezeiten:
Viele, wenn auch nicht alle, Content Management Systeme drücken die Ladezeit einer Seite in den Keller. Dies liegt prinzipiell weniger an der Datenbank, als vielmehr an den zahllosen php-Dateien die geladen und ausgeführt werden müssen.
Gerade WordPress ist für seine langsame Performance berüchtigt, weshalb unzählige, sogenannte Caching Plug-Ins existieren, die „statische“ Seiten erzeugen. Doch auch mit deren Einsatz gelingt es kaum eine WP basierte Domain auf unter 1,2 Sekunden zu bringen. Zum Vergleich: reine HTML Seiten laden in 0,2 – 0,3 Sekunden (hängt natürlich auch vom Server, der Anbindung und den Bildern ab).
Überdimensioniert:
Wenn Sie einen Shop mit tausenden von Produkten, oder eine große Informationswebseite mit ebenso vielen Artikeln betreiben, ist ein CMS unerlässlich.
Für die typischen Visitenkarten von Ärzten, Rechtsanwälten, Handwerken etc. die meist aus 5 Unterseiten bestehen, ist ein CMS zu viel des Guten (Nebenbei: aus solchen Seiten sollte man aus SEO Sicht eh einen „One-Pager“ machen).
Die großen Stärken eines CMS kommen hier nicht zum Tragen, wohl aber die Nachteile, insbesondere die Ladezeiten und die Security. Und welcher Selbstständige möchte, das seine gehackte Webseite, seinen Besuchern / Kunden einen Trojaner unterschiebt.
Ab welcher Seitenanzahl ein CMS benötigt wird, lässt sich pauschal nicht beantworten. Es hängt stark davon ab, wie oft sich die einmal erstellten Seiten ändern, und wie häufig neue Seiten dazukommen.
Als Orientierung: Domains mit 200 bis 300 Seiten, die sich selten ändern, lassen sich problemlos ohne CMS betreiben. Voraussetzung ist allerdings das man die sehr mächtigen (u.a. „reguläre Ausdrücke“) Suchen & Ersetzen Funktionen von Editoren wie Notepad++ beherrscht, um in einem Rutsch alle Unterseiten anzupassen (und ohne etwas zu „zerschießen“).
Features
Die Features unterscheiden sich natürlich, aber hier die gängigen Funktionen im Überblick:
- Trennung Layout und Inhalt
- Versionsmanagement
- WYSIWYG-Editor
- Benutzermanagement
- Volltextsuche für CMS und Webseite
- Automatische Updates
- Kategorien und Verschlagwortung (Tags) von Inhalten
- Archivierung alter Inhalte
- Mehrsprachige Benutzeroberfläche (deutsch, englisch, französisch, usw.)
- Backup-Funktionen
- Multimedia Verwaltung
Systemanforderungen
Meistens benötigt ein CMS einen Webserver (Apache o.a.) und eine Datenbank (MySQL, o.a.) sowie PHP, Pearl oder Phyton.
Damit der geneigte Anwender / Programmierer Anpassungen auch „offline“ also auf seinem Laptop / PC testen kann, wurde XAMPP ins Leben gerufen.
XAMPP ist ein von Apache Friends entwickeltes kostenloses und quelloffenes plattformübergreifendes Webserver-Paket, das hauptsächlich aus dem Apache HTTP Server, der MySQL-Datenbank und Interpretern für Skripte der Programmiersprachen PHP und Perl besteht.
XAMPP ist nicht für den Einsatz als Produktivsystem (z. B. als öffentlicher Webserver) gedacht, sondern für Entwickler, die möglichst schnell ein kompaktes Testsystem aufsetzen möchten.
Ein Ziel von XAMPP ist einfache Installation der unterstützten Betriebssysteme (Windows, MacOS, Linux).
Offiziell beabsichtigten die Designer von XAMPP, es nur als Entwicklungswerkzeug zu verwenden, um Website-Designern und Programmierern zu ermöglichen, ihre Arbeit auf ihren eigenen Computern ohne Zugang zum Internet zu testen. Um dies so einfach wie möglich zu gestalten, sind viele wichtige Sicherheitsfunktionen standardmäßig deaktiviert.
Marktanteile

Etwa 50% der Top 40 Millionen Websites verwendet entweder kein CMS oder ein unbekanntes. Zum Vergleich: Dreamweaver kommt auf etwa 2,6 Millionen Installationen, und liegt damit in derselben Größenordnung wie Joomala!
Zu den bekanntesten CMS gehören WordPress (2003), Joomla (2005 (vorher Mambo)), TYPO3 (1998), Contao (2006; als TYPOlight) und Drupal (2001). In Klammern ist das Jahr des ersten Release angegeben. Die Links führen zur Wikipedia.
Alternativen
HTML Editoren
In den Anfangsjahren des Internets wurden HTML Seiten entweder manuell erstellt (z.B. mit Notepad++) oder mit Programmen wie Dreamweaver (Adobe), weit seltener mit Frontpage (Microsoft). Diese boten zwar WYSIWYG Unterstützung, aber waren dennoch primär für die Erstellung einzelner Seiten gedacht.
Übrigens: MS WORD kann schon seit 15 Jahren jedes Dokument auch als HTML Datei ausgeben. Der Code ist zwar grusselig, aber es geht. Probieren Sie es einfach mal aus („Speichern unter“ -> Dateityp „Webseite (*.htm,*.html)).
Website-Baukasten
Software wie Zeta Producer (früher auch NetObjects Fusion) werden lokal unter Windows, Mac OS, Linux installiert, und erstellen nicht primär einzelne Seiten, sondern ganze Projekt. Sie sind ebenfalls Template basiert, übernehmen aber auch vollständig der Anpassung der Menüs etc. schlussendlich werden die Seiten per FTP auf den Server hochgeladen.
Online Homepage
Fast alle Hoster bieten einen solchen kostenpflichtig an. Mit diesem können Sie sich ihre Internet-Präsenz zusammen klicken, und dann als HTML Dateien ablegen.
Anbieter wie Wix oder Jimdo bieten auch einen solche, auf der Cloud basierten, Service. Die Grundfunktionen sind kostenfrei. Zudem benötigen sie nicht unbedingt eine eignen Domain, sondern ihren Seiten wird eine Subdomain zugeordnet. Cave: wenn Sie mit Ihren Seiten jemals ernsthaft „gefunden“ werden wollen, ist eine eigene Domain unbedingt erforderlich.
Eigenentwicklung
Etliche große Publisher, wie heise, IBM, MIT, amazon, nutzen Eigenentwicklungen die sich natürlich speziell an deren Bedürfnissen orientieren.
Flat-File-CMS
Damit sind Content Management Systeme gemeint, die keine Datenbank (ein Sicherheitsrisiko weniger) benötigen, und stattdessen Texte in Dateien speichern. Eines der ältesten Flat-File-CMS ist GetSimple CMS, das seit 2009 entwickelt wird. Daneben gibt es noch Pico und das sehr robuste und schlanke Kirby (2009).