WCMS

1.3 Struktur eines Web Content Management Systems (WCMS)

Am Beispiel von Joomla! werde ich hier kurz die Struktur eines WCMS erläutern.

Front- und Backend

Ein Web Content Management System (WCMS) besteht meist aus einem Frontend und einem Backend. Das Frontend ist die Website, wie sie der Besucher und der dort angemeldete Benutzer sehen.

Das Backend dagegen ist die Verwaltungsanwendung, die im Falle eines WCMS ebenfalls im Internetbrowser abgebildet wird. Im Backend wird von berechtigten Personen konfiguriert, gepflegt, aufgeräumt, werden Statistiken erstellt und oft auch neue Inhalte erzeugt. Das Backend findet man unter einer anderen URL als die Website.

Zugriffsrechte

Immer wenn es um Management geht, geht es um das clevere Verwalten von vorhandenen Ressourcen. In einem WCMS werden den beteiligten Personen User- und Gruppennamen zugeordnet und diese mit unterschiedlichen Zugriffsrechten versehen. Das geht von einem einfachen registrierten Benutzer über einen Autor und Editor bis hin zum Superadministrator, der alles darf. Abhängig von den Rechten erscheint das Frontend dann mit anderen Inhalten, der Möglichkeit, Inhalte direkt auf dem Frontend zu bearbeiten, oder der Benutzer erhält die Erlaubnis, im Backend zu arbeiten.

Inhalte

Inhalte können verschiedener Art sein. Im einfachsten Fall ist es ein Text. Inhalt kann aber auch ein Bild, ein Link, ein Musikstück, ein Schnipsel aus einer Anwendung wie Google Maps oder die Kombination aus allem sein. Um den Überblick über die Inhalte zu behalten, bettet man sie in Strukturen ein, beispielsweise Texte in verschiedene Kategorien. Auch die Kategorien sind natürlich Inhalte, die verwaltet werden müssen. Newsfeeds sind sehr populär geworden, da der Internet Explorer 7 die Lesemöglichkeit von RSS Feeds zum ersten Mal anbot. Heute benutzen immer noch weit über 80% der Menschheit diesen Browser. Mit Newsfeeds besteht die Möglichkeit, Daten aus anderen Quellen zu integrieren. Die Integration, Kategorisierung, Bewertung, das „Mashen“ und die Aktualisierung von Newsfeed-Inhalten spielen eine immer größere Rolle und werden immer mehr zum Klebstoff zwischen unterschiedlichen Websites.

Extensions

Komponenten, Module, Templates und Plugins werden als Extensions (Erweiterungen) bezeichnet. Sie stellen zusätzliche Funktionen bereit, die im Kern von Joomla nicht enthalten sind.

Templates

Ein Template ist eine Art visuelle Schablone, die über die Inhalte gelegt wird. Ein Template definiert die Farben, Schriftarten, Schriftgrößen, Hintergrundbilder, Abstände und Aufteilung der Seite und somit alles, was mit dem Erscheinungsbild der Seite zu tun hat. Ein Template besteht aus mindestens einer HTML-Datei für die Struktur der Seite und einer CSS-Datei für das Design. Es kann aber auch erheblich komplexer in der Struktur sein und Joomla!-Daten barrierefrei oder für einen völlig anderen Zweck aufbereiten.

Plugins

Ein Plugin ist ein Stück Programmiercode, das sich an bestimmte Stellen im Joomla!-Framework »anheftet«, um die Funktionalität zu verändern. Beispielsweise können innerhalb eines Inhaltstextes Plugins genutzt werden, um den Inhalt eines Moduls in einen Text zu laden. Auch bei der Website-weiten Suche werden Plugins benutzt, um Zusatzkomponenten in die Suche zu integrieren. Plugins werden manchmal wie eine Makrosprache in Joomla! genutzt.

Module

Ein Modul ist ein Bereich zusätzlich zum Inhaltsbereich im Frontend, der meistens Daten aus einer Komponente anzeigt. Module können an vordefinierten Stellen (Positionen) im Template angezeigt werden. Module mit Bezug auf die Komponenten werden genutzt, um die Inhalte in der gewünschten Form an anderen Stellen als im Inhaltsbereich im Template zu integrieren. Das Modul Letzte Neuigkeiten liefert beispielsweise die Überschriften der zuletzt über die Content Komponente eingestellten fünf Beiträge an das Template. Ein anderes Modul ermittelt z.B. die Anzahl der User, die gerade online sind und zeigt das Ergebnis an.

Komponenten

Joomla! muss erweiterbar sein und mit den Anforderungen wachsen. Mit dem Begriff Komponenten werden in Joomla! Erweiterungen bezeichnet, die zusätzliche Funktionalität zur Verfügung stellen und meistens über einen eigenen Bereich in der Joomla!-Administration verfügen. Typische Komponenten der vergangenen Jahre sind beispielsweise ein Online-Shop, eine Bildergalerie, ein Newsletter- oder ein Forensystem. Heute spielen Dinge wie Suchmaschinenoptimierung, Benutzerrechte, mehrseitige Formulare und variable Inhaltsstrukturen eine zunehmend größere Rolle.

Komponenten enthalten die Geschäftslogik Ihrer Seite und stellen die Inhalte im Inhaltsbereich (Main Body) der Website dar.

Workflow

Unter Workflow versteht man einen Arbeitsablauf. Der deutsche Dreisatz (stempeln, lochen, abheften) ist ein Beispiel für einen Workflow. Auch ein Rezept zum Backen eines Kuchens ist ein Workflow. Da bei einem CMS meist mehrere Menschen die Inhalte bearbeiten, ist ein gut organisierter Workflow eine echte Hilfe.

Früher sprach man in diesem Zusammenhang auch von Arbeitsvorräten, die ein Benutzer hat. Beispielsweise sieht der Bearbeiter eine Liste von unveröffentlichten Neuigkeiten, die er auf Richtigkeit zu untersuchen hat. Nach der Prüfung schaltet er die Neuigkeiten frei, und sie erscheinen im Arbeitsvorrat des Publishers, der sich nun überlegen muss, ob er die Nachricht auf der Startseite veröffentlicht.

Konfigurationseinstellungen

Hier werden Einstellungen festgelegt, die für die gesamte Homepage gelten. Dazu gehören etwa der Titeltext im Browserfenster, Schlüsselwörter für Suchmaschinen, Schalter, die es erlauben oder verbieten, sich auf der Seite anzumelden, die die gesamte Seite offline oder online schalten, und viele weitere Funktionen.

API

Eine Programmierschnittstelle12 (API) gehört heute zum „guten Ton“. Es muss möglich sein (und ist es auch), Joomla! von anderen Programmen aus anzusprechen und gewissermaßen fernzubedienen. Das ermöglicht ganz neue Anwendungen, die vorher mit Joomla! nicht realisierbar waren. Die API ist das wichtigste Bindeglied zwischen Third Party Extensions Entwicklern und dem Joomla!-Kern.

1.1 Content Management System (CMS)

Der Begriff Content Management System enthält die englischen Begriffe Content (Inhalt) und Management (Verwaltung). Er bezeichnet also recht ungenau ein System, mit dem Inhalte verwaltet werden können. So ein System kann eine Tafel und ein Stück Kreide sein (Speisekarte, Schultafel), es kann aber auch so etwas wie die freie Enzyklopädie Wikipedia oder ein Auktionshaus wie eBay sein. In allen drei Fällen werden Inhalte verwaltet. In den letzten beiden Beispielen sogar von sehr vielen Teilnehmern.

Diese Teilnehmer spielen bei Inhaltsverwaltungssystemen eine große Rolle, einerseits in der Funktion des Verwalters (Administrator) und andererseits in der Rolle des Benutzers (User) und der des Redakteurs.

Aber es kommt noch besser. Außer CM-Systemen gibt es natürlich auch noch Bezeichnungen wie Enterprise Ressource Planning Systeme (ERP-Systeme, Verwaltung von Firmendaten), Customer Relationship Management Systeme (CRM-Systeme, Pflege von Kundenkontakten), Document Management Systeme (DMS, Verwaltung von Doku­menten), Human Resource Management Systeme (HRM-Systeme, Personalverwaltung) und viele weitere.

Durch diese inflationäre Begriffs- und Funktionsvielfalt fällt es schwer, den Begriff CMS zu definieren. Diese Definition aus Wikipedia hat mir am besten gefallen:

„Ein Content-Management-System (CMS) ist ein Anwendungsprogramm, das die gemeinschaftliche Erstellung und Bearbeitung des Inhalts von Text- und Multimedia-Dokumenten (Content) ermöglicht und organisiert.“

Die Abkürzung ECMS hat sich für Enterprise Content Management Systeme etabliert. Alle anderen oben aufgeführten Abkürzungen sind dann Untermengen eines ECMS.

Joomla! fällt in die Gattung der Web Content Management Systeme (WCMS), da dessen Funktionalität innerhalb eines Browsers im Web verwaltet wird.

Im allgemeinen Sprachgebrauch wird der Begriff Content Management meist im Zusammenhang mit Webseiten verwendet, die sich über einen Browser pflegen lassen. Was die Definition nicht unbedingt einfacher macht. :-)

Inhalt abgleichen