48
Seminararbeit im Studienschwerpunkt Multimedia zum Thema Web Content Management Systeme Konzepte und praktische Anwendung Von: Frithjof Klös E-Mail: [email protected] Matrikelnummer: xxxxxx Betreuender Professor: Prof. Dr. P. Kneisel Abgabedatum: 03.09.2007 Eingereicht im Sommersemester 2007 im Fachbereich Mathematik, Naturwissenschaften und Informatik (MNI) der Fachhochschule Gießen-Friedberg Wiesenstraße 14 35390 Gießen

Web Content Management Systeme - fsmni.thm.de fileSeminararbeit im Studienschwerpunkt Multimedia zum Thema Web Content Management Systeme Konzepte und praktische Anwendung Von: Frithjof

  • Upload
    trannhi

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Seminararbeit im Studienschwerpunkt Multimedia zum Thema

Web Content Management Systeme

Konzepte und praktische Anwendung

Von: Frithjof Klös

E-Mail: [email protected]

Matrikelnummer: xxxxxx

Betreuender Professor: Prof. Dr. P. Kneisel

Abgabedatum: 03.09.2007

Eingereicht im Sommersemester 2007

im Fachbereich Mathematik, Naturwissenschaften und Informatik (MNI)

der Fachhochschule Gießen-Friedberg

Wiesenstraße 14

35390 Gießen

Inhaltsverzeichnis

Einleitung ............................................................................................................................. 1

1. Definitionen ................................................................................................................. 2

1.1 Content .................................................................................................................. 2

1.2 Content Management System (CMS) .................................................................... 2

1.3 Web Content Management System (WCMS) ........................................................ 3

1.4 Enterprise Content Management System (ECMS) ................................................ 3

2. CMS Typen ................................................................................................................... 4

2.1 Server und Client ................................................................................................... 4

2.1.1 Serverbasiertes CMS ...................................................................................... 4

2.1.2 Clientbasiertes CMS ....................................................................................... 4

2.1.3 Mischungen .................................................................................................... 4

2.2 Dynamik und Statik ............................................................................................... 5

2.2.1 Dynamisches CMS .......................................................................................... 5

2.2.2 Statisches CMS ............................................................................................... 5

2.2.3 Hybrid CMS .................................................................................................... 5

3. Ein Ziel – zwei Wege .................................................................................................... 6

3.1 Vorgehensweise bei einer statischen Internetseite .............................................. 6

3.2 Vorgehensweise mit einem CMS .......................................................................... 8

4. Die Vorzüge eines CMS ................................................................................................ 9

4.1 Dezentrale Pflege von Inhalten ............................................................................. 9

4.2 Benutzerverwaltung ............................................................................................ 10

4.3 Redaktioneller Workflow zur Qualitätssicherung ............................................... 11

4.4 Link Management ................................................................................................ 12

4.5 Versionskontrolle ................................................................................................ 12

4.6 Erweiterbarkeit und Schnittstellen ..................................................................... 14

4.7 Wiederverwendbarkeit & Syndication ................................................................ 14

4.8 Lokalisierung ........................................................................................................ 16

5. Vertriebsmodelle ....................................................................................................... 17

5.1 Kommerzielle Lizenzen ........................................................................................ 17

5.2 Open Source ........................................................................................................ 18

5.2.1 Lizenzen ........................................................................................................ 19

5.2.2 Kosten und Service ....................................................................................... 20

6. Technologien .............................................................................................................. 21

7. Barrierefreiheit........................................................................................................... 23

7.1 Grafische Gestaltung ........................................................................................... 24

7.2 Gestaltung auf Code-Ebene ................................................................................ 26

8. Joomla ........................................................................................................................ 29

8.1 Die Geschichte ..................................................................................................... 30

8.2 Angewandte CMS Konzepte ................................................................................ 31

8.2.1 Front- und Backend ...................................................................................... 31

8.2.2 Zugriffsrechte und der resultierende Workflow .......................................... 32

8.2.3 Verwaltung und Präsentation der Inhalte ................................................... 33

8.2.4 Templates ..................................................................................................... 35

8.3 Barrierefreiheit in Joomla ................................................................................... 36

8.4 Erweiterungen ..................................................................................................... 36

8.4.1 JoomFish ...................................................................................................... 37

8.4.2 DocMan ........................................................................................................ 37

8.4.3 VirtueMart ................................................................................................... 38

8.5 Ausblick ............................................................................................................... 38

9. Zusammenfassung ..................................................................................................... 39

Anhang ............................................................................................................................... 40

I. Abkürzungsverzeichnis ............................................................................................ 40

II. Abbildungsverzeichnis ............................................................................................ 41

III. Tabellenverzeichnis ............................................................................................. 41

IV. Listingverzeichnis ................................................................................................ 41

V. Quellen .................................................................................................................... 42

Seite | 1

Einleitung

Das Internet hat in den letzten zehn Jahren einen regelrechten Boom erlebt. Für viele

Menschen ist es mittlerweile die primäre Informationsquelle, um sich über

Unternehmen sowie deren Produkte und Dienstleistungen zu informieren. Zudem bietet

es sich durch seine dezentrale Organisation als kostengünstige Plattform an, um

weltweit Kunden anzusprechen und B2B oder B2C Kontakte aufzubauen und zu pflegen.

Auch viele private Internetnutzer verspüren ein Interesse, sich der Welt mit einer

eigenen Webpräsenz vorzustellen.

Die Erstellung und Pflege eines komplexen Internetauftritts ist jedoch enorm und mit

herkömmlichen, rein statischen HTML-Seiten nicht ökonomisch umsetzbar. Zudem

bedarf es bei diesem Ansatz eines großen Fachwissens seitens der Content-Autoren

bezüglich Webprogrammierung und –design. Diese Umstände erwecken den Bedarf an

einer Software, die eine einfache Erstellung von Inhalten ermöglicht und diese je nach

Benutzerwünschen dynamisch aufbereitet und präsentiert.

Diese Seminararbeit behandelt solche Programme, so genannte Web Content

Management Systeme (WCMS), und bietet einen Einblick in deren Funktionsweise,

Konzepte und die verwendeten Softwarestrukturen. Zudem werden einige beim Vertrieb

der Systeme anzutreffende Lizenzmodelle vorgestellt und deren Vor- und Nachteile

erläutert. Ein weiterer Abschnitt ist dem Thema Barrierefreiheit gewidmet, das in

Webpräsentationen oft unbeachtet bleibt, aber durchaus einen wichtigen Stellenwert

besitzt. Betreiber einer Internetseite sollten ein großes Interesse daran haben, ihre

Angebote einem möglichst breiten Publikum vorzustellen und zugänglich zu machen.

Abschließend wird ein Einblick in das Open-Source-CMS Joomla geboten, mit dem sich

auf einfache Art und Weise private, aber auch geschäftliche Internetseiten realisieren

lassen.

Seite | 2

1. Definitionen

1.1 Content

„Content ist der informative elektronische Inhalt einer Nachricht oder einer Seite, der

nicht von Strukturen oder Formaten geprägt ist.1“

Die Bezeichnung dient als Sammelbegriff für multimediale Inhalte jeglicher Form und

bezeichnet in dem hier behandelten Kontext insbesondere Texte und Grafiken, aber

auch Daten sowie Video und Audio.

Content ist einem Prozess, dem Content Lifecycle,

unterworfen (siehe Abbildung 1): Dieser beginnt mit

der Erstellung, führt zur Qualitätskontrolle, mündet in

die Publikation und endet mit der Archivierung. Bei

Bedarf kann eine Anpassung an neue Gegebenheiten

erfolgen und der Zyklus mit einer neuen

Versionsnummer erneut beginnen.

1.2 Content Management System (CMS)

Ein Content Management System ermöglicht… „die zentrale Verwaltung digitaler Daten

innerhalb eines Systems2“.

Dabei geht es in der Regel um die Speicherung und gemeinsame Nutzung von digitalen

Dokumenten innerhalb einer Groupware-Anwendung3, auf die Teilnehmer über das

Intranet oder Internet gemeinsam zugreifen können. Content Management Systeme

enthalten neben Funktionen zur Verwaltung von Inhalten meist auch Methoden zur

Erstellung, Präsentation und Kontrolle der gespeicherten Daten.

1 www.itwissen.info/definition/lexikon//__content_inhalt.html 2 www.cyres.de/cms-grundlagen/cms-definition/content-management-system.htm 3 www.itwissen.info/definition/lexikon//__groupware_groupware.html

Abbildung 1: Der Content Lifecycle

Seite | 3

1.3 Web Content Management System (WCMS)

Ein WCMS ist… „ein Programm, das die Verwaltung und Erstellung digitaler Daten mit

dem Schwerpunkt auf das Medium Internet unterstützt4“.

Im allgemeinen Sprachgebrauch verschwimmen die Grenzen zwischen den Begriffen

Content Management System und Web Content Management System. Ein CMS ist auf

die flexible Nutzung von Daten jeglicher Form ausgelegt, das WCMS aber primär auf die

Verwaltung von Datentypen, die im Internet verwendet werden. Dies sind zum Beispiel

HTML, XML, JPG oder MP3 Dateien. Ein WCMS muss zur Präsentation seiner Daten auf

viele Besonderheiten des Mediums Internet Rücksicht nehmen. So gibt es zum Beispiel

ein breites Spektrum an Anzeigegeräten (Browser, PDAs, Smartphones), auf denen nach

Möglichkeit eine einheitliche Darstellung der Inhalte erfolgen soll.

1.4 Enterprise Content Management System (ECMS)

Der Begriff Enterprise Content Management System bezeichnet… „die zentrale

Verwaltung digitaler Daten innerhalb eines Systems mit zusätzlichen nicht per Definition

näher bestimmten Funktionen5“.

Ein ECMS vereint im Allgemeinen die Funktionen eines CMS und WCMS. Dokumente

werden dabei in einem neutralen Format gespeichert (meist XML) und je nach

gewünschter Ausgabe (Print, PDF-Datei, Internetseite) umgewandelt. Dieser Ansatz kann

durch die erhöhte Wiederverwendbarkeit der Inhalte zu Effizienzsteigerungen und

Kostenersparnissen führen, es besteht allerdings die Gefahr, dass auf die

Besonderheiten der verschiedenen Ausgabemedien unzureichend Rücksicht genommen

wird und in allen Bereichen der Präsentation die Qualität des Angebots sinkt.

4 www.cyres.de/cms-grundlagen/cms-definition/web-content-management-system.htm 5 www.cyres.de/cms-grundlagen/cms-definition/enterprise-content-management-system.htm

Seite | 4

2. CMS Typen

2.1 Server und Client

Content Management Systeme werden nach Art der Verwaltung unterschieden. Im

folgenden Abschnitt sollen einige Typen vorgestellt werden.

2.1.1 Serverbasiertes CMS

Bei serverbasierten Content Management Systemen befindet sich die Programmlogik für

Verwaltung und Präsentation der gespeicherten Inhalte auf einem Server. Es bedarf

dazu einer serverseitigen Programmiersprache, die in den meisten Fällen mit einer

Datenbank in Verbindung steht. Diese Systeme ermöglichen eine dezentrale Verwaltung

des CMS, zu deren Hilfe meist nur ein Internetbrowser benötigt wird. Auf Clientseite

lässt sich also eine gewisse Plattformunabhängigkeit erzielen.

2.1.2 Clientbasiertes CMS

Diese Art wird mithilfe eines Programmes, das auf einem Rechner installiert wird,

gesteuert und verwaltet. Jede Person, die am Redaktionsprozess der Internetseite

beteiligt ist, muss diese Software installiert haben. Ist das Verwaltungsprogramm an ein

Betriebssystem gebunden, werden Personen die eine andere Plattform einsetzen

ausgeschlossen. Die generierten, statischen Seiten werden per FTP auf den Server

geladen, eine serverseitige Programmiersprache ist nicht vonnöten.

Um eine einheitliche Präsentation des Internetauftritts zu gewährleisten, verfügen

clientbasierte Content Management Systeme meist über ausgereifte Layoutfunktionen,

mit denen Seitenvorlagen erstellt werden können, die dann im täglichen Betrieb nur

noch mit Inhalten gefüllt werden müssen.

2.1.3 Mischungen

Neben den beiden genannten Typen gibt es auch Mischformen. Auf Serverseite existiert

hier eine Programmlogik zur Präsentation, Datenhaltung und Benutzerverwaltung.

Redakteure können, zum Beispiel mit einer lokal installieren Textverarbeitung, Artikel

erstellen und diese dann unter Zuhilfenahme eines Plugins in HTML-Code wandeln und

auf den Server übertragen.

Seite | 5

2.2 Dynamik und Statik

Neben der Verwaltungsart werden Content Management Systeme auch nach der Art der

Ausgabe unterschieden. Der Besucher einer Internetseite wird im Allgemeinen keinen

Unterschied zwischen den vorgestellten Varianten bemerken, auf der Serverseite

hingegen sind Differenzen festzustellen, die nachfolgend näher erläutert werden.

2.2.1 Dynamisches CMS

Bei diesem Typ wird eine Content-Seite erst mit einem Aufruf durch den Anwender aus

der Datenbank erzeugt. Solch eine Seite besteht aber nicht nur aus dem eigentlichen

Artikel und dessen Daten. Zusätzlich zum Artikel müssen noch Informationen zur

Anzeige eines Navigationsmenüs, Bilder und womöglich ergänzende Texte aus der

Datenbank abgefragt, vom Webserver zusammengesetzt und ausgeliefert werden. Ein

Vorteil dieses Systems ist eine höchstmögliche Aktualität und eine sehr gute

Personalisierung der dynamisch generierte Seiten. Jedoch können diese Vorgänge bei

einer hohen Besucherfrequenz zu einer erheblichen Serverauslastung führen. Um dem

entgegen zu wirken, verfügen dynamische Content Management Systeme meist über

Caching-Mechanismen, die Kopien der aufgerufenen Seiten zwischenspeichern und

diese für einen eventuellen Wiederaufruf vorhalten.

2.2.2 Statisches CMS

Ein statisches CMS erzeugt direkt nach der Erstellung eines Artikels eine HTML-Seite und

speichert diese im Dateisystem des Servers ab. Besuchern wird nun immer diese

statische Seite angezeigt. Da der Webserver lediglich fertige HTML-Dokumente

ausliefern muss, ist seine Auslastung bei dieser Methode geringer, personalisierte Seiten

sind aber nicht realisierbar.

2.2.3 Hybrid CMS

Der Betreiber eines solchen CMS kann entscheiden, welche Seiten statisch ausgeliefert

und welche dynamisch erzeugt werden sollen. Auf diese Weise wird zum Beispiel die

Startseite eines Webauftritts dynamisch erzeugt und kann personalisierte Inhalte

anzeigen, weitere Seiten, deren Inhalte nicht regelmäßig geändert werden, sind direkt

als HTML-Datei abgelegt. Auf diese Weise ist ein Kompromiss zwischen Aktualität und

Performanz realisierbar.

Seite | 6

3. Ein Ziel – zwei Wege

Vorrangiger Zweck der Webpräsenz eines Unternehmens ist die informationelle

Versorgung potenzieller und bestehender Kunden. Dies kann die Vorstellung und

Beschreibung neuer und bestehender Produkte, aber auch Supportangebote oder eine

Präsentation des Firmenprofils sein. Firmen, die eine breite Produktpalette anbieten und

diese regelmäßig pflegen müssen, haben ein Interesse, ihre Kunden zeitnah über

Veränderungen ihres Portfolios zu informieren. Zu diesem Zweck ist eine schnelle und

zeitnahe Aktualisierung oder Erweiterung des Webangebotes nötigt. Dies kann auf

verschiedenen Wegen vonstattengehen.

3.1 Vorgehensweise bei einer statischen Internetseite

Eine statische Homepage ist schnell entworfen. Solange sie nur ein paar Dutzend

Unterseiten umfasst und die Aktualisierungsintervalle niedrig gehalten werden, ist auch

die Pflege solcher Seiten effizient zu handhaben. Wächst das Angebot aber schnell, ist

zudem Aktualität ein wichtiges Kriterium und sind viele Personen mit der Generierung

neuer Inhalte beschäftigt, wird die Struktur der Webpräsenz schnell unübersichtlich.

Für die Erstellung und Pflege statischer Homepages werden meist Programme wie

Adobe Dreamweaver6 oder Microsoft Frontpage7 eingesetzt. Diese Werkzeuge wollen

dem Anwender eine intuitive Benutzung ermöglichen und sind in ihren Bedienkonzepten

meist an Textverarbeitungen wie Microsoft Word oder Open Office angelehnt. Sie folgen

dem Anspruch, Internetseiten zu erzeugen, ohne dass der Anwender eine einzige Zeile

HTML-Code schreiben muss.

Jede Seite einer Homepage wird durch eine HTML-Datei repräsentiert, die per FTP-Client

auf den Webserver kopiert und manuell in einem Menü oder einer anderen Seite

verlinkt werden müssen. Wird eine Seite gelöscht, weil die dargebotenen Informationen

veraltet sind, so bedarf es einer Entfernung aller darauf verweisenden Links und in

einigen Fällen einer inhaltlichen Anpassung anderer Seiten.

Möglicherweise ist die gelöschte Information aber für manche Besucher noch

interessant und sollte deshalb in einem anderen Bereich der Homepage archiviert

6 www.adobe.com/de/products/dreamweaver/ 7 office.microsoft.com/de-de/frontpage/

Seite | 7

werden. Um die Übersicht im Dateisystem des Webservers für die Autoren zu wahren,

ist es ratsam, eine solche Datei in einen anderen Ordner zu verschieben, oder zumindest

per Umbenennung entsprechend zu markieren. Dies hat abermals eine Anpassung aller

darauf verweisenden Links zur Folge. Kunden, die in ihrem Browser ein Lesezeichen auf

eine solche Seite angelegt haben, erhalten eine Fehlermeldung und müssen von Neuem

nach der gewünschten Information fahnden, was sich unter Umständen als sehr

aufwändig erweist, denn eine Volltextsuche ist mit statischen Internetseiten nicht

möglich.

Eine Rechte- und Benutzerverwaltung für Redakteure ist nur auf Dateisystemebene

umsetzbar, aber nicht praktikabel. Dies führt dazu, dass jeder Artikel von allen Autoren

verändert werden kann. Die versehentliche Löschung einer HTML-Datei kann bei

unzureichender Backup-Strategie erhebliche Probleme hervorzurufen. Die entfernte

Information muss mühsam neu erstellt werden. Auch für Besucher der Internetseite ist

eine Benutzerverwaltung nur unzureichend realisierbar, dabei kann es erforderlich sein,

bestimmten Kundengruppen gesonderte Seiten mit speziell aufbereiteten Informationen

anzubieten.

Ein Lösungsansatz der einige der Probleme die mit

statischen Internetseiten einhergehen beseitigt, ist

die Einführung einer klaren Kompetenzhierarchie

(siehe Abbildung 2). Artikel werden von

Redakteuren erstellt, bei Bedarf von Grafikern

illustriert und anschließend an einen Webmaster

weitergeleitet. Zu diesem Zeitpunkt liegen die

Inhalte noch nicht als HTML-Dateien vor, die

Abgabe kann zum Beispiel als Word- oder PDF-Datei

erfolgen.

Der Webmaster generiert aus den eingehenden

Dokumenten neue Seiten, die sich in die übrige

Gestaltung der Homepage nahtlos einfügen. Er

muss dafür nicht nur technisch versiert sein und ein professionelles Wissen in HTML-

Redakteur Grafiker

Inhalte

Webmaster

erstellen

programmiert

werden verwaltet

Abbildung 2: Arbeitsabläufe bei der Generierung statischer Internetseiten

Seite | 8

Programmierung aufweisen, sondern sollte auch über gestalterische Talente verfügen,

um die Artikel ansprechend aufzubereiten. Zudem ist er für die Konsistenz der

Homepage verantwortlich, trägt also Sorge dafür, dass neue Inhalte an der richtigen

Position der Seitennavigation eingefügt und veraltete Texte komplett aus der Struktur

entfernt werden, damit keine verwaisten Links zurückbleiben.

Mit zunehmender Größe der Internetseite und steigender Frequenz neu einzustellender

Inhalte wird der Webmaster zum Flaschenhals im Redaktionsprozess, da er nur eine

gewisse Anzahl neuer Artikel pro Tag bearbeiten kann. Als Konsequenz leiden die

Aktualität und die Qualität des Internetauftritts. Eine Aufstockung des Webmaster-

Personals wäre ein Lösungsansatz, würde aber langfristig wieder zum Ausgangsproblem

führen, da zu viele Personen an der Pflege der Seite beteiligt sind und in Layout- und

Technikfragen ihre eigenen Ziele verfolgen.

Wie man durch dieses Konzept sehen kann, ist die Pflege einer großen, statischen

Internetseite mit enormem Aufwand und damit hohen Kosten verbunden. Die

Konsistenz bezüglich Inhalten, Navigation und Corporate Identity kann nur durch strenge

Reglementierungen erhalten werden, an die sich alle an der Erstellung beteiligten

Personen halten müssen.

3.2 Vorgehensweise mit einem CMS

Ab einer Anzahl von ca. 50-100 regelmäßig aktualisierten Seiten führt aufgrund der

hohen Kosten kein Weg mehr an einem Content Management System vorbei. Es

erleichtert die Erstellung und Verwaltung von Webinhalten erheblich und hilft dabei,

Kosten zu sparen. Redakteure können ihre Artikel per Webbrowser direkt im CMS

erstellen und benötigen in den meisten Fällen keine separate Software. Sie werden

durch einen WYSIWYG-Editor8 unterstützt, der grundlegende Formatierungsoperationen

zulässt und sich ähnlich einer Textverarbeitung bedienen lässt. HTML-Kenntnisse oder

gar Programmiererfahrung in der dem CMS zugrunde liegenden Programmiersprache

sind bei Redakteuren nicht erforderlich. Diese Aufgaben werden von anderen Personen

übernommen.

8 http://de.wikipedia.org/wiki/Wysiwyg

Seite | 9

Zur Qualitätssicherung der Internetseite gibt es auch hier eine Kompetenzhierarchie und

eine klare Rollenverteilung (siehe Abbildung 3). Eingestellte Artikel werden nicht sofort

veröffentlicht und so für alle Besucher der Webpräsenz sichtbar, sondern müssen erst

durch Chefredakteure überprüft und freigeschaltet werden. Je nach System können

Mitglieder dieser Gruppe Artikel kommentieren und dem zuständigen Redakteur zur

Korrektur erneut vorlegen.

4. Die Vorzüge eines CMS

Content Management Systeme sollen bei der Generierung und Bereitstellung von

Informationen Unterstützung leisten. Dabei können sich Autoren auf ihre eigentliche

Aufgabe, die Erstellung von Artikeln, konzentrieren und müssen sich nicht um Dinge wie

Menüstruktur oder die Datenhaltung des erzeugten Contents kümmern. Diese Bereiche

werden von anderen, spezialisierten Gruppen abgedeckt.

4.1 Dezentrale Pflege von Inhalten

Zentrales Eingabe- und Verwaltungsmedium der meisten Content Management Systeme

ist ein Webbrowser. Autoren und Administratoren sind somit nicht an einen Ort bzw.

Rechner gebunden, auf dem eine bestimmte Softwareumgebung installiert ist. Es wird

lediglich ein Computer mit einer Internetverbindung benötigt, um Veränderungen an der

Homepage durchzuführen. So müssen Mitarbeiter nicht unbedingt vor Ort sein, um am

Webauftritt mitzuarbeiten, sondern können bequem, vom Homeoffice aus, Inhalte

einpflegen. Dies ermöglicht eine hohe Kostenreduzierung, da nur wenige Büroräume

anzumieten sind. Zudem bietet sich die Möglichkeit, kurzfristig Gastautoren zu

Abbildung 3: Generierung von Inhalten in einem Content Management System

Webmaster administriert

Redakteur / Grafiker Chefredakteur Portalmanager

Inhalte

erstellt

kontrolliert gibt frei

erzeugt CMS

Seite | 10

beschäftigen, ohne ein großes Softwarepaket installieren zu müssen, um redaktionell

mitzuarbeiten.

Personen deren Aufgabe in der Verwaltung der Homepage liegt, steht in den meisten

Fällen eine vielseitige Administrationsoberfläche (das Backend) zur Verfügung, die auch

über einen Internetbrowser zugänglich ist. Hier können zum Beispiel Menüs angepasst

und Artikel veröffentlicht, gesperrt oder verschoben werden.

4.2 Benutzerverwaltung

Kern eines CMS ist ein ausgeklügeltes Rechtemanagement, das sowohl Personen die mit

der Pflege und Wartung der Homepage beschäftigt sind, als auch deren Besucher

verwalten kann. Für jeden registrierten Benutzer wird festgehalten, welche Bereiche des

CMS er sehen, ändern und ergänzen darf. So sollten zum Beispiel Mitarbeiter der

Marketing-Abteilung ihre eigenen Seiten ändern können, nicht jedoch Modifikationen an

der Menüführung oder den Seiten einer anderen Abteilung durchführen können. Die

Benutzerverwaltung bietet zudem die Möglichkeit für spezielle Besucher der Seite

personalisierten Content anzubieten. Damit wäre es zum Beispiel möglich, registrierten

Stammkunden andere Produktpreise anzuzeigen, als sie normale Besucher der Seite zu

Gesicht bekommen. Hierzu bedarf lediglich der Anpassung eines Berechnungsfaktors für

diese Gruppe.

Die Aufgabenteilung bei der Pflege eines komplexen Internetauftritts bringt einige neue

Rollen mit sich: Systemadministratoren, Projektverantwortliche, Redakteure,

Chefredakteure. Jede dieser Rollen hat einen fest definierten Aufgabenbereich, den sie

nicht überschreiten darf, um einer Störung der regulären Arbeitsabläufe

entgegenzuwirken. Hierzu bietet ein CMS in der Regel vordefinierte Gruppen an, die mit

entsprechenden Rechten ausgestattet sind und denen bestehende Nutzer zugeordnet

werden können. Komplexe Systeme erlauben zumeist die Definition zusätzlicher,

individueller Gruppen.

Seite | 11

4.3 Redaktioneller Workflow zur Qualitätssicherung

Um einen gleich bleibenden Standard

der Webpräsentation zu gewährleisten,

sollte ein Artikel nach seiner

Fertigstellung durch den Redakteur nicht

direkt veröffentlicht werden. Im Rahmen der Qualitätssicherung bedarf es eines

Freigabe-Zyklus, der in Abbildung 4 angedeutet ist. Zur Unterstützung dieses Workflows

sollte ein Dokument unterschiedliche Zustände annehmen können, aus denen sich neue

Rollen im Redaktionsprozess ergeben (siehe Tabelle 1).

Tabelle 1: Beziehung zwischen dem Zustand des Dokuments und der beteiligten Rolle

Zustand Rolle In Bearbeitung / Erstellung Redakteur / Grafiker

Freigegeben Chefredakteur

Publiziert Portalmanager

Archiviert CMS oder Chefredakteur

Im redaktionellen Alltag reicht oft eine Kontrolle nach dem „Vieraugenprinzip“ aus,

dennoch wird hier ein etwas komplexeres Beispiel angebracht. Alle Schritte finden

innerhalb des CMS statt:

Ist die Arbeit an einem Artikel beendet und wurde er von einem Mitarbeiter der

Grafikabteilung bebildert, so wird er dem Chefredakteur vorgelegt, der eine inhaltliche

Überprüfung des Textes und eine Kontrolle der Bilder vornimmt. Bedarf es Änderungen

des Artikels, so wird er dem Autor zur Überarbeitung erneut vorgelegt. Hat der Artikel

einen Stand erreicht, auf dem er veröffentlicht werden kann, reicht ihn der

Chefredakteur an den Portalmanager weiter, der dann dafür sorgt, dass der neue Inhalt

an der richtigen Stelle auf der Webpräsenz für Besucher sichtbar wird.

Ein gutes CMS erlaubt die Festlegung eines Start- und Endtermins für die

Veröffentlichung eines Artikels. Nach Ablauf des Endtermins wird er einem Redakteur

erneut zur inhaltlichen Überprüfung vorgelegt. Sind die Informationen noch aktuell, so

bekommt der Artikel ein neues Verfallsdatum, sind Änderungen notwendig, so wird der

Artikel in überarbeiteter Form, wieder online gestellt. Sind die Informationen des

EErrsstteelllleenn FFrreeiiggeebbeenn PPuubblliizziieerreenn

Abbildung 4: Workflowaktivitäten

Seite | 12

Artikels überholt, so kann er in einen gesonderten Bereich der Webpräsenz archiviert

werden.

4.4 Link Management

Um Probleme zu vermeiden, die bei statischen Internetseiten auftreten, wenn zum

Beispiel ein Artikel in einen anderen Bereich verschoben wird, weist ein CMS jedem

Element das zur Übermittlung von Informationen beiträgt (Artikel, Artikelkategorien,

Menüeinträge, etc.) eine eindeutige Identifikationsnummer (ID) zu. Ein Link im

Navigationsmenü der Seite oder innerhalb eines Artikels verweist auf eine solche ID.

Wird nun ein Element in einen andern Bereich verschoben, bleibt seine Nummer

erhalten und ist somit weiterhin erreichbar.

Das CMS führt Listen darüber, ob, von wo und wie oft ein Element referenziert wird.

Sollte zum Beispiel ein Artikel gelöscht werden, auf den aus anderen Artikeln oder

Menüs verwiesen wird, so unterbindet es den Löschvorgang und zeigt an, an welchen

Stellen Anpassungen vorgenommen werden müssen, um die Konsistenz der Homepage

zu erhalten.

4.5 Versionskontrolle

Wenn mehrere Personen an der Generierung von Inhalten beteiligt sind, wird eine

Versionierung benötigt, die es ermöglicht, bei Bedarf auf eine alte Version

zurückzugreifen. Dies ist zum Beispiel bei den allgemeinen Geschäftsbedingungen oder

Verträgen wichtig, deren Texte sich regelmäßig ändern. Aber auch bei Templates oder

Skripten kann es von Nöten sein, auf „alte“ Versionen zurückzugreifen. Content

Management Systeme, die primär für kleine Webpräsenzen gedacht sind, verfügen in

der Regel über keinerlei Funktionalität zur Versionskontrolle. Andere wiederum bieten

ausgefeilte und aufwändige Konzepte. Es existieren unterschiedliche Ansätze zur

Realisierung einer Versionierung.

Als Erstes wäre die statische Form zu nennen. Hierbei wird eine Kopie des Artikels auf

einem gewissen Stand abgespeichert. Der Vorteil dieser Methode besteht darin, dass

dem Versionsarchiv im Fehlerfall ein kompletter Artikel entnommen und wieder online

gestellt werden kann. Nachteilig hingegen ist die enorme Datenflut, die entsteht, wenn

Seite | 13

Inhalte regelmäßig geändert werden. Jede Änderung erzeugt eine neue Kopie, wodurch

mit der Zeit ein Verlust an Übersicht einhergeht.

Die Alternative zur eben genannten Art ist eine dynamische Versionierung. Hier werden

die Änderungen eines Dokumentes in einer Versionsverwaltung wie Subversion9 oder

Microsoft Sourcesafe10 gespeichert. Somit bleiben alle vorangegangenen Versionen der

Inhalte verfügbar und beliebig viele vorangegangene Stände sind wiederherstellbar.

Zudem können die Änderungsprozesse an einem Dokument durch entsprechende

Funktionen sichtbar gemacht werden. In der Datenbank des CMS wird die jeweils letzte,

freigegebene Version abgelegt.

Je komplexer ein CMS gestaltet ist und je mehr Personen an der Erstellung von Inhalten

beteiligt sind, desto ausgefeilter müssen die Mechanismen zu Versionskontrolle

gestaltet werden. So sollte das System garantieren, dass zu einem Zeitpunkt nur eine

Person an einem Artikel arbeiten kann und währenddessen der Zugriff für andere

Autoren gesperrt wird. In diesem Zusammenhang wird von Locking gesprochen. Ein

weiterer Mechanismus, Labels genannt, bezeichnet die logische Gruppierung der

Versionsstände verschiedener Dateien. Wie in Abbildung 5 gezeigt, besteht ein Artikel

beispielsweise aus einem Template, einem Text und mehreren Bildern. In diesem

Beispiel liegen alle Komponenten in unterschiedlichen Versionen vor, aus denen

letztendlich ein Artikel mit dem Label Version 1.0 zusammengestellt und veröffentlicht

wird.

9 subversion.tigris.org/ 10 www.microsoft.com/germany/msdn/sourcesafe/

Abbildung 5: Zusammenfassung mehrerer Komponenten zu einem Artikel

0.9

1.0

1.1

1.2

1.0

1.1

1.2

0.8

0.9

1.0

1.1

1.0

1.1

1.2

Version 1.0

Label

Text Artikel-Template Grafik 1 Grafik 2

Seite | 14

4.6 Erweiterbarkeit und Schnittstellen

Nur selten wird ein CMS im Grundzustand alle gewünschten Funktionen bieten. Zudem

kommen im laufenden Betrieb einer Internetseite kontinuierlich weitere Anforderungen

hinzu. Ein einfaches Beispiel wäre die Nachrüstung einer Kalenderkomponente, mit der

regelmäßige Schulungstermine für die angebotene Software bekannt gegeben werden.

Es wäre aber auch denkbar, dass ein Unternehmen einen Direktvertrieb seiner Produkte

anbieten möchte und zu diesem Zweck eine komplexe eCommerce Erweiterung in die

bestehende Webpräsenz eingebunden werden soll.

Erweiterungen sollten als Plugins realisierbar sein, um nicht in den Code des CMS-Kerns

selber eingreifen zu müssen und womöglich dessen Funktion zu beeinträchtigen. Zu

diesem Zweck muss das CMS Programmierschnittstellen (API) anbieten, die es erlauben,

Daten mit seinem Kern auszutauschen und Zugriff auf vorhanden Funktionen wie zum

Beispiel die Kommunikation mit der Datenbank oder die einfache Integration bereits

definierter Toolbars bieten. Hier sollte bei der Wahl eines Systems insbesondere auf eine

ausführliche Dokumentation der Schnittstellen und eine gute Softwarearchitektur

geachtet werden.

4.7 Wiederverwendbarkeit & Syndication

Das Thema Wiederverwendbarkeit spielt insbesondere im Bereich der Enterprise

Content Management Systeme eine wichtige Rolle. Um Kosten zu sparen, kann es für

eine Firma von Interesse sein, Informationen einmal zusammenzustellen und

anschließend auf unterschiedlichen Wegen zu verbreiten. Dies könnte zum Beispiel eine

gesonderte Aufbereitung der Internetseite für unterschiedliche digitale Endgeräte sein.

Um eine adäquate Anzeige auf einem PDA oder Smartphone zu erreichen, sollte die

Seite anders strukturiert sein, als es auf einem PC-Bildschirm der Fall ist. Die

Wiederverwendung muss sich aber nicht nur auf den digitalen Bereich beschränken. So

könnte eine Informationsbroschüre über ein neues Produkt sowohl in gedruckter Form,

als auch auf der Internetseite neue Kunden werben. Beide Präsentationsformen könnten

denselben Datensatz verwenden, eine Neuerstellung wäre nicht nötig.

Zur Speicherung der Daten bedarf es der Verwendung eines neutralen Formates, aus

dem ohne großen Aufwand die unterschiedlichsten Zielformate generiert werden

Seite | 15

können. Für diesen Zweck ist XML die Beschreibungssprache erster Wahl, da sie eine

Trennung von Daten und deren Repräsentation ermöglicht. Hierzu ist eine Grammatik

(DTD11 oder XML-Schema12) nötig, die den genauen Aufbau eines Datensatzes

vorschreibt, die Umwandlung in ein anderes Format wird mittels XSL-Transformation

(XSLT)13 realisiert (siehe Abbildung 6). XSLT ist eine Programmiersprache, die selber auf

XML-Strukturen basiert. Ein so genannte XSLT-Prozessor transformiert hierbei, unter

Zuhilfenahme der Regeln eines XSLT-Stylesheets, XML-Dokumente in das gewünschte

Ausgabeformat.

Bisher wurde nur auf die Wiederverwendbarkeit von Content innerhalb eines Systems

Im vorangegangenen Abschnitt wurde auf die Wiederverwendbarkeit innerhalb eines

CMS eingegangen, die externe Verbreitung wird unter dem Begriff Syndication geführt.

Er beschreibt die erneute Verwertung redaktioneller Inhalte wie Nachrichten oder

Börsenkurse auf fremden Internetseiten. Betreiber einer Webpräsenz, die auf die

Darbietung aktueller Inhalte setzen, selber aber wenig Content generieren sind auf den

Zukauf aus externen Quellen, so genannte Online-Broker, angewiesen. Die

Datenübertragung findet dabei meist in einem XML basierten Format statt, das eine

layoutneutrale Präsentation ermöglicht. Es sieht im Allgemeinen Felder für das Datum

der Veröffentlichung, den Titel, einen Einführungs- und Haupttext sowie Medien und

Quellangaben vor. Die empfangenen Daten werden automatisch aufbereitet und an das

Aussehen der abbonierenden Internetseite angepasst. Im professionellen Bereich haben

11 de.wikipedia.org/wiki/Dokumenttypdefinition 12 http://www.w3.org/XML/Schema 13 www.w3.org/TR/xslt

Abbildung 6: Umwandung von XML-Daten in andere Formate

XSLT Stylesheet

XML Daten

XSL

T-P

roze

sso

r HTML PDF

DB

MS

dynamisch erzeugt

statisch

Seite | 16

sich Formate wie ICE14 oder NewsML15 etabliert. Letzteres bietet zum Beispiel einen

global einmaligen Identifizierer und erlaubt die Bildung von Unterversionen für

Nachrichten.

Im Kontext des Web 2.0 hat sich das RSS-Format16 durchgesetzt. Zahlreiche

Internetseiten bieten ihre Inhalte kostenlos als so genannte Feeds an, die vom Besucher

abonniert und mit einer Browsererweiterung oder einem externen Programm gelesen

werden können. Je nach Anbieter erhält der Abonnent vollständige oder gekürzte

Artikel, die dann per Link auf den Hauptartikel verweisen. Auch diese Inhalte können

natürlich in andere Webangebote eingebunden werden.

4.8 Lokalisierung

Für global operierende Unternehmen ist es wichtig, ihre Webpräsenz in

unterschiedlichen Sprachen verfügbar zu machen. Hier muss ein CMS gewählt werden,

das für diese Zwecke Verwaltungs- und Workflowprozesse anbietet. Dabei spielen

mehrere Überlegungen eine Rolle: Es besteht die Frage, ob für jede Sprache eine

individuelle Internetseite mit eigenen Inhalten bereitgestellt werden soll oder ob eine

Spiegelung mit übersetzen Inhalten erwünscht ist. In diesem Fall bedarf es

Überlegungen, was dem Besucher angezeigt wird, wenn ein Artikel in seiner Sprache

nicht verfügbar ist. Eine Möglichkeit wäre die Präsentation des original Inhaltes,

ergänzend oder als Alternative könnte ein Hinweis erfolgen, dass keine Lokalisierung

vorliegt.

14 www.contentmanager.de/magazin/artikel_9_das_ice-protokoll.html 15 www.contentmanager.de/magazin/artikel_67_newsml_-_das_neue_content_syndication_format.html 16 de.wikipedia.org/wiki/RSS

Seite | 17

5. Vertriebsmodelle

5.1 Kommerzielle Lizenzen

Im Bereich der kommerziellen Content Management Systeme gibt es zahlreiche

Lizenzmodelle, deren anfallende Kosten sich an verschiedenen Kriterien zum Beispiel der

Anzahl der Redakteure, Nutzer oder verwendeten CPUs orientieren. Bei allen Modellen

wird in der Regel ein umfangreiches Serviceangebot vereinbart, der Kunde erhält eine

auf seine Bedürfnisse zugeschnittene Software, die komplett vorkonfiguriert und

einsatzbereit ist. Auch die Erstellung eines Templates, das die Corporate Identity des

Auftraggebers widerspiegelt, gehört dazu. Die Betreuung endet aber nicht mit der

Auslieferung. Der Lizenzgeber steht dem Kunden permanent als Ansprechpartner zur

Verfügung und sollte bei auftretenden Problemen eine schnelle Hilfeleistung bieten.

Gerade wenn eine finanzielle Abhängigkeit des Kunden von der Verfügbarkeit des

Onlineangebotes besteht, ist eine schnelle Behebung von Problemen wichtig. Häufig

werden vertraglich Konventionalstrafen vereinbart, die fällig werden, falls das System

über einen gewissen Zeitraum nicht nutzbar ist.

Im Allgemeinen kristallisieren sich bei der Lizenzierung zwei Grundmodelle heraus. Bei

der ersten Variante handelt es sich um den klassischen Kauf einer Softwarelizenz, wobei

Updates und Erweiterungen meist zusätzlich berechnet werden. Im Kaufpreis inbegriffen

ist in der Regel die benötigte Hardware bzw. die Integration der Software in die

verfügbare Hardwarelandschaft.

Der zweite Ansatz sieht die Miete der Software vor, wobei der Kunde über die

Vertragslaufzeit hinweg regelmäßig mit Updates ohne zusätzliche Kosten versorgt wird.

Hierbei wird meist das APS-Modell (Application Service Providing) verfolgt. In diesem Fall

wird nicht nur die Software, sondern die komplette Infrastruktur, die für den Betrieb des

CMS nötig ist, gemietet. Die Hardware befindet sich im Rechenzentrum des Lizenzgebers

und wird auch von hier aus betreut. Je nach Vertrag kennt das APS-Modell verschiedene

Ausbaustufen, die von „selbst konfigurierbar“ bis „sofort startklar“ reichen. Dieser

Ansatz ist aufgrund der verhältnismäßig geringen Kosten besonders für kleinere

Unternehmen interessant, um in kurzer Zeit eine einfache Internetpräsenz zu etablieren.

Treten später zusätzliche Anforderungen auf, so können die nötigen Erweiterungen

Seite | 18

hinzugemietet werden. Im einfachsten Fall muss der ASP die neuen Komponenten

lediglich für den Kunden aktivieren. Zudem lässt sich neue Hardware durch die

Administratoren vor Ort zeitnah nachrüsten.

Ein großer Nachteil der Mietvariante ist die Abhängigkeit vom Anbieter, in die sich der

Kunde begibt. Besonders wenn wichtige Geschäftsprozesse über die Website ablaufen

und komplexe Warenwirtschaftssysteme darüber angebunden sind, ist dies nicht immer

wünschenswert. Es sollte ein gutes Vertrauensverhältnis zwischen den beiden

Vertragspartnern herrschen.

5.2 Open Source

Open Source erfreut sich mit dem enormen Erfolg von Linux immer größerer Beliebtheit.

Der Unmut über kommerzielle Software, die trotz hoher Anschaffungsgebühren nicht

die versprochenen Leistungen erbringt, ermutigt immer mehr Menschen dazu, sich im

Bereich der freien Software nach Alternativen umzuschauen. Diese Entwicklung hat

bewirkt, dass immer mehr Open Source Projekte entstanden sind, die sich als

Alternativen zu kostenpflichtiger Software im Markt positionieren wollen. Auch im Feld

der Content Management Systeme haben sich einige Projekte etabliert, die mit der Zeit

zu ernsthaften Konkurrenten kommerzieller Software geworden sind. Vorrangig zwei

Argumente sollen für freie Software sprechen. Zum einen die Freiheit von Lizenzkosten,

zum anderen der quelloffene Programmcode, der Einblicke in die genaue

Funktionsweise des CMS ermöglicht.

Linux dürfte in absehbarer Zeit die Marktmacht Microsofts zumindest im Consumer

Bereich nicht ernsthaft gefährden, da sich dessen Produkte im Heim- und Büroalltag

etabliert haben. Auch die Firma Apple, die sich als zweiter Konkurrent des Marktführers

etabliert hat, wird daran nicht viel ändern können. Im Bereich der Content Management

System stellt sich die Situation aber ganz anders dar. Hier kämpfen ca. 300 Anbieter um

Marktanteile (vgl. Nix S.128), von denen ein großer Teil mittelständische Unternehmen

als Zielgruppe hat. Doch gerade für die Bedürfnisse diese Firmen werden Open Source

Alternativen immer interessanter, da mit ihnen keine Lizenz- und Erwerbskosten

anfallen und sie sich zudem kostengünstig bzw. kostenlos erweitern lassen.

Seite | 19

Ein Argument, das gegen die Verwendung von Open Source Software sprechen soll, ist

die angeblich stümperhafte Programmierung und unzureichende Stabilität. Jedoch

haben sich dort mittlerweile professionelle Entwicklungs- und

Qualitätssicherungsprozesse etabliert. Ein Nachteil, mit dem die Hersteller

argumentieren, kann aber bestätigt werden. Die meisten freien CMS speichern ihre

Inhalte nur als HTML-Code ab, andere Formate können sie nicht ausgeben. Auch besteht

in der Aufbereitung der Inhalte für verschiedene Endgeräte (PDA oder Smartphone)

Nachholbedarf.

Durch die gegebene Freiheit, sich selber an der Entwicklung von Open Source Projekten

zu beteiligen und diese zu erweitern, entstehen oft viele Nebenprojekte, die dasselbe

Ziel verfolgen. So hat man im CMS „Joomla“ die Wahl zwischen einer Hand voll

WYSIWYG- Editoren, die letztendlich einen äquivalenten Funktionsumfang bieten, keiner

bietet jedoch die Möglichkeit, Artikeltemplates zu verwenden.. Hier schafft nur der Griff

zu eine kommerziellen Produkt Abhilfe. Des weiteren kann es passieren, dass

ambitionierte Projekte einschlafen und letztendlich nicht mehr weiter entwickelt

werden. Auch bekannte Fehler werden dann nicht mehr behoben. So bleibt nur der Griff

zu einer alternativen Komponente, bei der man unter Umständen auf einige Funktionen

verzichten muss.

5.2.1 Lizenzen

Im Open Source Bereich gibt es auch Lizenzen, welche die Nutzung des Quellcodes und

der daraus erzeugten Programme reglementieren. In der Regel ist eine kommerzielle

Nutzung gestattet und Erweiterung, Lizenzen wie die GPL (General Public License17)

schreiben aber vor, dass der modifizierte Quellcode entweder mit dem Programm

weitergereicht werden oder auf Anfrage nachgeliefert werden muss. Solange

kommerzielle CMS Erweiterungen lediglich Schnittstellen eines Open Source Systems

verwenden, können sie ohne Probleme unter einer anderen Lizenz veröffentlicht

werden, bedient sich aber der Hersteller einer solchen Erweiterung des Programmcodes

freier Projekte, und gibt sein Produkt als Closed Source unter einer anderen Lizenz

heraus, kann dies zu gerichtlichen Auseinandersetzungen führen. Da ein CMS meist als

Baukastensystem organisiert ist und aus einem Grundsystem mit dazugehörigen 17 www.gnu.de/documents/gpl.de.html

Seite | 20

Erweiterungen besteht, müssen unter Umständen zahlreiche Lizenzen beachtet werden,

was zu einer gewissen Rechtsunsicherheit führen kann.

Die Vielfalt an Herstellern und Projekten, die sich mit der Entwicklung von

Erweiterungen eines freien CMS beschäftigen, kann zudem zu weiteren Problemen

führen, wenn Fragen zur Funktionsgarantie auftreten. Projekte im Open Source Bereich

werden oft als Hobby betrieben, es besteht wird also keine Garantie in puncto Sicherheit

oder regelmäßiger Pflege. Wenn also die Existenz einer Firma durch fehlerhafte

Erweiterungen gefährdet wird, so gibt es niemanden, der dafür geradesteht. Wer sich

für ein kommerzielles Content Management System entscheidet, hat in der Regel nur

eine Lizenzvereinbarung und einen Ansprechpartner, der bei Problemen Abhilfe schaffen

muss. Ist ihm dies nicht möglich, so muss er in der Regel vertraglich vereinbarte

Konventionalstrafen zahlen.

5.2.2 Kosten und Service

Open Source Software ist zwar kostenlos, aber nur wenige Unternehmen verfügen über

Personal, das entsprechendes Wissen und die nötige Kompetenz besitzt, um einen

ansprechenden Internetauftritt zu erstellen und zu administrieren. Diese Posten müssen

zusätzlich in den Total Cost of Ownership18 mit einbezogen werden. Wie bei einem

kommerziellen CMS auch, fallen Kosten für Hardware, spezielle Anpassungen, Betrieb,

Wartung, Konzeption, Design und Schulungen an.

Um diesen Markt zu bedienen bieten zahlreiche Firmen ihre Dienste an. Sie sind primär

auf Serviceleistungen wie Hosting, Layout-Gestaltung, Generierung von Inhalten und

Schulungen spezialisiert, da mit der Grundsoftware an sich kein Geld verdient werden

kann. Eigenentwicklungen beschränken sich auf Anpassungen eines CMS und die

Programmierung spezieller Erweiterungen. Ist die Erstellung dieser zusätzlichen

Komponenten sehr aufwendig, schwindet der Kostenvorteil gegenüber kommerzieller

Software sehr schnell.

18 www.crmmanager.de/ressourcen/glossar_352_tco_total_cost_of_ownership.html

Seite | 21

6. Technologien

Die Hauptaufgabe eines Content Management Systems ist die Zusammenstellung von

Inhalten und deren Aufbereitung zu HTML-Seiten. Die dafür benötigten Informationen

werden im Allgemeinen aus einer Datenbank entnommen und die fertigen Dokumente

von einem Webserver ausgeliefert. Hierzu wird ein Technologiemix verwendet, der sich

je nach gestellten Anforderungen an das System, unterschiedlich zusammensetzt.

Kleine und mittelgroße Web Content Management Systeme setzten im Allgemeinen auf

eine so genannte 3-Tier-Architektur (siehe Abbildung 7), die aus einer

Präsentationsschicht (Client), einer Logikschicht (Webserver) und einer Datenschicht

besteht. Die Geschäftslogik liegt hier auf dem Webserver, der direkt mit der Datenbank

kommuniziert. Solche Systeme werden meist in skriptbasierten Programmiersprachen

wie PHP, Perl oder Python realisiert, die innerhalb eines Webservers lauffähig sind und

meist plattformunabhängig zu Verfügung stehen. Um komplexe Aufgaben

durchzuführen (z. B. die Größenänderung von Bildern) finden meist externe Programme

Verwendung, die per Skript gesteuert werden können.

Da die Kernfunktionalität eines Webservers ursprünglich lediglich die Auslieferung von

Da Webserver eigentlich lediglich für die Auslieferung von Internetseiten bestimmt

waren und erst später um die Verarbeitung von Skriptsprachen erweitert wurden, kann

sich diese Lösung ab einem gewissen Besucheraufkommen als zu inperformant

erweisen. Aus diesem Grund verwenden große Content Management Systeme,

insbesondere ECMS, oft einen Ansatz, der auf einem Applikationsserver basiert. In

diesem Kontext wird von einer 4-Tier-Architektur gesprochen (siehe Abbildung 8).

Abbildung 7: 3-Tier-Architektur

Tier 1 Client

Tier 2 Geschäftslogik

Tier 3 Datenhaltung

Webbrowser

Webserver Skriptsprache

Ext. Programme

PHP HTTP API Relationales DBMS XML DBMS

Seite | 22

Hier sendet der Client eine Anfrage an den Webserver, der diese mittels einer

Middleware in einen entfernten Methodenaufruf umgesetzt (in Java: RMI – Remote

Method Invocation) und dem Applikationsserver weiterleitet. Dort ist die Geschäftslogik

des CMS in Form verschiedener kooperierender Programme umgesetzt, die durch

Datenbankabfragen die nötigen Informationen sammeln, als HTML aufbereiten und an

den Webserver zur Auslieferung zurückgegeben. Auf Applikationsserverebene haben

sich zwei Technologien durchgesetzt. Dies wäre zum einen die J2EE-Plattform (Java

Enterprise Edition), zum anderen das .NET-Framework von Microsoft.

Zur Datenhaltung werden relationale Datenbanken wie MySQL, Microsoft SQL oder

Oracle eingesetzt. Für Content Management Systeme, die ihre Inhalte in XML speichern,

sind auch XML-Datenbanken wie Tamino19, Infonyte20, Berkeley DB XML21 interessant, da

hiermit eine Wandlung der Daten (z. B. von rational zu XML) hinfällig wird. Die

Datenbank enthält alle Informationen, die zur Darstellung einer Internetseite benötigt

werden. Dies sind primär die gespeicherten Texte, je nach System können aber auch

Bilder und Layoutinformationen dort abgelegt werden. Die Umsetzung der Datenhaltung

orientiert sich an der zu erwartenden Besucherzahl. Ist diese gering, so können alle

benötigten Komponenten des CMS auf einem Server laufen. Ab einem gewissen Punkt

ist es sinnvoll, die Datenbank auszugliedern, um den Rest des Systems zu entlasten.

Mitunter kommen mehrere redundante oder auch verteilte Datenbanken zum Einsatz,

die über einen Lastverteilungsmechanismus angesprochen werden.

19 www.softwareag.com/Corporate/products/tamino/default.asp 20 www.infonyte.de/ 21 www.oracle.com/database/berkeley-db/xml/index.html

Abbildung 8: 4-Tier Architektur

Tier 1 Client

Tier 3 Applikationsserver

Tier 3 Datenhaltung

Webbrowser

DMBS

Tier 2 Web-Container

Geschäftslogik

Komponenten

RMI HTTP API

Webserver

Middleware

Seite | 23

7. Barrierefreiheit

Mit zunehmender Nutzung des Internets steigt auch der Bedarf an barrierefreien

Webangeboten. Dies bedeutet, dass eine Internetseite für jeden Benutzer lesbar und

bedienbar sein muss, unabhängig davon, ob er körperlich beeinträchtigt ist, oder nicht.

Um dieses Bestreben zu unterstützen, hat das W3C die Web Accessibility Initiative

(WAI)22 gegründet, von der 1999 die Web Content Accessibility Guidelines 1.0 (WCAG)23

verabschiedet wurde. Darin sind insbesondere 14 Richtlinien bezüglich der

barrierefreien Programmierung von Internetseiten, Inhaltsarchitekturen, Layout-

Grundlagen und Technologieverwendung festgelegt.

In Deutschland ist dieses Thema inzwischen gesetzlich geregelt. Das „Gesetz zur

Gleichstellung behinderter Menschen (BGG)24“, welches am 27. April 2002 in Kraft

getreten ist, beinhaltet folgenden Paragrafen:

§ 11 Barrierefreie Informationstechnik

(1) Träger öffentlicher Gewalt im Sinne des § 7 Abs. 1 Satz 1 gestalten ihre

Internetauftritte und -angebote sowie die von ihnen zur Verfügung gestellten

grafischen Programmoberflächen, die mit Mitteln der Informationstechnik

dargestellt werden, *…+ schrittweise technisch so, dass sie von behinderten

Menschen grundsätzlich uneingeschränkt genutzt werden können. *…+

(2) Die Bundesregierung wirkt darauf hin, dass auch gewerbsmäßige Anbieter von

Internetseiten sowie von grafischen Programmoberflächen, die mit Mitteln der

Informationstechnik dargestellt werden, *…+ ihre Produkte entsprechend den

technischen Standards nach Absatz 1 gestalten.

Behörden müssen dafür Sorge tragen, dass ihre Internetangebote für eine möglichst

große Anzahl der Bürger zugänglich sind, aber auch Firmen sollten ein Interesse an

einem barrierefreien Internetauftritt haben, da jeder Besucher ihrer Webseite ein

potenzieller Kunde ist. Zudem nehmen Suchmaschinen einer Internetseite ähnlich wie

sehbehinderte Nutzer wahr. Sie können nur textuelle Informationen einlesen und

22 www.w3.org/WAI/ 23 www.w3.org/TR/WCAG10/#Guidelines 24 www.gesetze-im-internet.de/bgg/BJNR146800002.html

Seite | 24

verarbeiten. Ein entsprechend angepasster Internetauftritt kann also eine Verbesserung

im Ranking eines solchen Dienstes bedeuten.

Web Content Management Systeme können dabei Unterstützung leisten, da sie einen

großen Teil der Seite automatisch generieren und der erzeugte Code auf Barrierefreiheit

hin optimiert werden kann. Sind die Menschen, die sich mit der Einpflege von Inhalten

beschäftigen nicht speziell geschult, wird dieser Vorteil aber wieder schnell

zunichtegemacht. Aus diesem Grund sollten Artikel von der freigebenden Instanz im

Workflowprozess auf die entsprechenden Kriterien überprüft werden.

7.1 Grafische Gestaltung

Für eine gute Webpräsenz ist in erster Linie eine übersichtliche Gestaltung wichtig.

Informationen sollten an den Positionen verfügbar gemacht werden, an denen sie der

Besucher erwartet. Hierzu bedarf es eines einfach gestalteten Menüs mit

aussagekräftigen und nach Möglichkeit wenig verschachtelten Unterpunkten.

Ein weiteres wichtiges Kriterium ist die Kompatibilität zu unterschiedlichen

Anzeigegeräten und Betriebssystemen - nicht jeder Interessent wird mit einer

Kombination aus Windows und Internet Explorer eine Internetseite aufsuchen. Gerade

behinderte Menschen verwenden oft textbasierte Browser, die keine Grafiken

verarbeiten können. Heutzutage werden immer öfter Smartphones oder PDAs zum

Surfen eingesetzt, die unter Umständen kein Javascript oder keine Flash Animationen

unterstützen. In diesem Umfeld sollte auf darauf geachtet werden, dass hier andere

Bildschirmauflösungen als sie auf einem PC üblich sind, verwendet werden.

Als primärer Informationsträger innerhalb des Internets werden Texte verwendet. Hier

sind ein paar Dinge hinsichtlich der Schriftformatierung zu beachten. Dies beginnt

bereits bei der Wahl einer geeigneten Schriftart, denn nicht jedem Anzeigegerät stehen

dieselben Schriftarten zu Verfügung. Aus diesem Grund sollte der Webdesigner in seiner

Stylesheet-Datei25 immer unterschiedliche Fonts vorsehen. Hier haben sich Verdena,

Arial, Times New Roman und Helvetica etabliert. Alternativ kann auch eine so genannte

generische Schriftart angegeben werden. Es gibt fünf verschiedene Arten dieser

25 de.wikipedia.org/wiki/Stylesheet

Seite | 25

generischen Schriften (siehe Tabelle 2). Die damit verknüpfte Schrift wird letztendlich

durch das Betriebssystem oder den Browser bestimmt.

Tabelle 2: Generische Schriftarten (alle mit 11 Pt Größe)

Typ Beispiel

serif Eine Schriftart mit Serifen (Times New Roman)

sans-serif Eine Schriftart ohne Serifen (Arial)

monospace Eine Schriftart mit Buchstaben

identischer Breite (Courier New)

cursive Eine schräg gestellte Schrift (Calibri - kursiv)

fantasy Eine Schmuckschrift (Impact)

Wie man sehen kann, haben die Buchstaben der Beispiele, trotz identisch gewählter

Schriftgröße, eine unterschiedliche Höhe. Dies wirkt sich natürlich auch auf das

Aussehen einer Internetseite aus, die auf einem Anzeigegerät betrachtet wird. Zur

Bestimmung der Schriftgröße existieren in HTML sowohl absolute (cm, pt, px), als auch

relative Einheiten (em, %). Bei Letzteren wird die resultierende Größe anhand der

Standardeinstellungen des Browsers bzw. eines Elternelementes in der Seitenstruktur

bestimmt.

Die Wahl der Einheit ist letztendlich eine Glaubensfrage. Wenn hoher Wert auf eine

möglichst einheitliche Darstellung auf unterschiedlichen Browsern und

Betriebssystemen gewünscht, so ist eine pixelgenaue Angabe zu empfehlen. Für

normalen Text hat sich eine Größe zwischen 12 und 14 Pixeln etabliert, Überschriften

sollten zwischen 15 und 18 Pixeln liegen. Eine optimale Anpassung an unterschiedliche

Displaygrößen und Auflösungen ist nur mit einer relativen Einheit zu bewerkstelligen.

Hier wird im Allgemeinen eine Angabe in em bevorzugt.

Im Bereich der grafischen Gestaltung einer Internetseite gibt es ebenfalls einige

Richtlinien. Hier sollte der Fokus auf einer kontrastreichen Farbwahl liegen, um

farbfehlsichtige Menschen nicht auszuschließen. Haben der Seitenhintergrund und die

darauf liegende Schrift einen ähnlichen Farbton, so könnte eine auf diese Weise

beeinträchtigte Person wichtige Informationen übersehen. Um einen Eindruck zu

gewinnen, wie sich die eigene Webpräsenz Sehbehinderten darstellt, bieten sich die

Seite | 26

Angebote von Vischeck26 oder dem Colorblind Webpage Filter27 an. Abbildung 9 zeigt die

Internetseite von Spiegel Online zum einen aus der Sichtweise einer Person ohne

Sehstörung und zum anderen wie sie ein Mensch mit Deuteranopie (Grünblindheit)

warnehmen würde.

Abbildung 9: www.spiegel.de für Normalsichtige (l) und Menschen mit Deuteranopie

7.2 Gestaltung auf Code-Ebene

In diesem Bereich sollte eine Kombination aus XHTML28 und CSS29 gewählt werden. Die

Regeln für XHTML-Code sind wesentlich strenger, als die des regulären HTML. Ein

solches Dokument muss den Regeln einer Grammatik entsprechen, die als so genannte

Dokument-typdefinition (DTD) vorliegt. Sie schreibt unter Anderem vor, welche

Attribute ein Element besitzen muss. Hier sind in erster Linie zwei Schlagworte von

Bedeutung: Wohlgeformtheit und Gültigkeit.

Grundregeln für Wohlgeformtheit in XHTML

- Jedes Dokument besitzt genau ein Wurzelelement (<html>)

- Alle Elemente mit Inhalt verfügen über ein Beginn- und ein Ende-Tag

(<h1>…</h1>)

- Elemente ohne Inhalt müssen ebenfalls abgeschlossen sein (<br/>)

- Beginn- und Ende-Tags sind ebenengetreu, paarig zu verschachteln

- Ein Element darf nicht mehrere Attribute desselben Namens besitzen

26 www.vischeck.com 27 colorfilter.wickline.org 28 www.w3.org/TR/xhtml1/ 29 www.w3.org/Style/CSS/

Seite | 27

Ein Dokument ist gültig, wenn es den Regeln der Wohlgeformtheit folgt, den Verweis auf

eine DTD enthält und dieser auch entspricht. Erfüllt es diese Kriterien, so sollte ein

Screenreader30 eigentlich keinerlei Probleme bei dessen Verarbeitung haben, leider

ergeben sich aber weitere Probleme, die hauptsächlich mit der Zweckentfremdung von

HTML-Elementen und einer unzureichenden Trennung von Struktur und Formatierung

zusammenhängen.

Die wichtigste Regel für barrierefreies Webdesign ist, die in HTML zu Verfügung

gestellten Elemente entsprechend ihrer Bedeutung einzusetzen. Ein Beispiel, das von

vielen Quellen herangezogen wird, die dieses Thema beleuchten, ist der Umgang mit

Überschriften. Hierbei gibt es zwei Herangehensweisen (siehe Listing 1). Bei der ersten,

häufig verwendeten Methode wird ein Text geschrieben, der eine Überschrift darstellen

soll und anschließend manuell formatiert. Die zweite, weitaus bessere Lösung, ist die

Verwendung des von HTML für Überschriften vorgesehenen h-Tags. Die Formatierung

wird hierbei über eine externe CSS-Regel bewerkstelligt.

Bei aktivierten CSS Stylesheets führen beide Wege optisch zum selben Ergebnis, aber nur

mit der zweiten Methode erhält man eine Dokumentenstruktur, die von Suchmaschinen

und Screenreadern gut erfasst werden kann. Zudem reduziert sie erheblich den

Aufwand, wenn Änderungen am Design der Seite durchgeführt werden müssen. Es

bedarf lediglich einer Änderung der CSS-Datei, um alle Überschriften der Webpräsenz

anzupassen.

Listing 1: Zwei Methoden zur Gestaltung einer Überschrift

Schlechte Methode HTML-Datei:

<font style=“size: 18px“>Überschrift 1</font>

Besser

HTML-Datei:

<h1>Überschrift 1</h1>

CSS-Datei:

h1{font-size: 18px;}

30 de.wikipedia.org/wiki/Screenreader

Seite | 28

Weitere Probleme entstehen durch die Verwendung von Tabellen zu

Formatierungszwecken. Die ansprechende Gestaltung einer Internetseite kann sich als

recht kompliziert herausstellen, wenn man über wenige Kenntnisse bezüglich HTML

oder der Funktionen des eingesetzten Editors verfügt. So kann sich schon die einfache

Positionierung eines Bildes innerhalb eines Textes als Problem herausstellen. Ein häufig

beschrittener Lösungsweg ist der Einsatz mehrspaltiger Tabellen, die beliebig angepasst

werden und dann Texte und zugehörige Illustrationen aufnehmen. Mehrfach

verschachtelte Tabellen in Kombination mit den zugehörigen Formatierungsattributen

erzeugen einen Overhead an Informationen, die der Screenreader verarbeiten und

ausgeben muss. Der blinde Benutzer verliert so schnell die „Übersicht“ auf der Seite.

Durch diese Methode müssen zudem unnötige Daten übertragen werden, was

insbesondere bei mobilen Endgeräten mit erhöhten Kosten verbunden ist.

Ein weitaus besserer Ansatz ist die Verwendung von DIV-Elementen31. Mit ihnen können

Bild- oder Textinformationen gekapselt und anschließend per externer CSS-Datei

beliebig positioniert werden. Sind die CSS Stylesheets deaktiviert, wie es bei

textbasierten Anzeigegeräten meist der Fall ist, so erscheinen alle Elemente geordnet

untereinander. Der Betrachter kann die Seite nun vertikal abarbeiten und muss nicht

zusätzlich in der horizontalen Ebene nach Informationen suchen.

31 www.w3schools.com/tags/tag_div.asp

Seite | 29

8. Joomla

Joomla ist ein populäres Open Source WCMS, das sich immer

größerer Beliebtheit erfreut. Zusammen mit TYPO332 und

Drupal33 gehört es zu den bekanntesten Systemen dieser Art

und ist für kleine bis mittelgroße Internetseiten ausgelegt.

Joomla basiert auf der serverseitigen Programmiersprache PHP,

verwendet zur Datenhaltung eine MySQL Datenbank und ist primär für den Betrieb auf

einem Apache Webserver innerhalb eines Linux Betriebssystems ausgelegt. Es lässt sich

also komplett in einer Open Source Umgebung betreiben. Die benötigten

Programmversionen sind aus Tabelle 3 ersichtlich. Das CMS bietet im

Auslieferungszustand nur grundlegende Funktionen zur Verwaltung und Präsentation

von Webinhalten, weist aber Schnittstellen zur Einbindung von Erweiterungen auf, von

denen in Kapitel 8.3 einige vorgestellt werden.

Joomla ist für den Betrieb kleiner bis mittelgroßer Internetseiten geeignet. Die

Homepage des Projektes weist zahlreiche Referenzen34 für dessen Anwendung aus.

Unter anderem wird es als Basis für die Internetauftritte des Computermagazins PC-

Praxis (Abbildung 10) und des Marktforschungsunternehmens Media Control (Abbildung

11) eingesetzt.

Abbildung 10: www.pcpraxis.de

Abbildung 11: www.media-control.de

32 www.typo3.org 33 www.drupal.org 34 www.joomla.org/content/blogcategory/35/69/

Programmversion PHP > 4.2.x MySQL > 3.23.x Apache > 1.3.x

Tabelle 3: Joomla

Systemvoraussetzungen

Seite | 30

8.1 Die Geschichte

Joomla hat seinen Ursprung im Jahr 2001, in dem die Firma Miro (heute Rice Studios35)

ihr Content Management System Mambo36 als Open Source Software der Allgemeinheit

zur Verfügung stellte. Ihre Beweggründe dafür waren umfangreiche Tests durch die

Community und der Wunsch nach einer weiteren Verbreitung des Systems.

2002 wurde eine kommerzielle Variante mit dem

Namen Mambo CMS abgespalten und die freie

Variante in Mambo Open Source (MOS) umbenannt.

Im Jahr 2004 wurde entschieden, diese Version

wieder unter dem Namen Mambo zu führen.

Um die Weiterentwicklung des Projektes zu unterstützen, plante Miro die Gründung

einer Stiftung für die Open Source Variante, die am 10.8.2005 als Mambo-Foundation37

angekündigt wurde. Miro hatte sich in den Jahren zuvor nicht mehr an der Pflege des

CMS beteiligt, sondern die Arbeit einem Team aus der Community überlassen. Trotzdem

sollte die Kontrolle über die Stiftung bei der Firma liegen, wodurch sich die Entwickler

übergangen sahen.38 Deshalb kündigten diese am 17.08.2005 Pläne bezüglich einer

Abspaltung vom Mambo Projekt an.

Am 01.09.2005 wurde der Name Joomla! für die Abspaltung bekannt gegeben, der sich

von dem Wort Jumla aus der Suaheli-Sprache ableitet. Es bedeutet das Ganze oder auch

als Ganzes und soll die Rolle der Community betonen. Das Entwicklerteam sicherte sich

die Rechte an dem neuen Namen und teilte ihn vor der offiziellen Bekanntgabe den

Betreibern einschlägiger Mambo Internetseiten mit, um ihnen eine zeitnahe Umstellung

ihrer Domains zu ermöglichen.

Am 7.9.2005 wurde ein Logowettbewerb

ausgeschrieben, um dem Projekt mit dem Slogan

Because Open Source Matters ein neues Gesicht zu

verleihen. Die eingereichten Vorschläge wurden am

35 www.ricestudios.com.au 36 source.mambo-foundation.org/ 37 www.mambo-foundation.org/ 38 www.golem.de/0508/39942.html

Abbildung 12: Das Mambo Logo

Abbildung 13: Das Joomla! Logo

Seite | 31

14.9.2005 der Community zur Abstimmung vorgelegt und am 17.9.2005 die erste Joomla

Version 1.0 veröffentlicht.

Mittlerweile (August 2007) hat das Projekt Version 1.0.13 erreicht, zudem steht die in

vielen Punkten überarbeitete Version 1.5 als Release Candidate zu Verfügung (dazu

mehr in Kapitel 8.5. Der überwiegende Teil der 3rd Party Entwickler hat zum Joomla

Projekt gewechselt, Mambo wird jedoch von einem neuen Entwicklerteam

weitergepflegt, hat aber mittlerweile an Bedeutung verloren. Joomla hingegen konnte in

den letzten Jahren zahlreiche Preise gewinnen und seinen Beliebtheitsgrad steigern.

8.2 Angewandte CMS Konzepte

Joomla verfügt über die Basiskonzepte, die ein Content Management System bieten

sollte. Dazu gehört eine Zugriffsverwaltung, ein Workflowkonzept, Erweiterbarkeit und

Templates zur Trennung von Inhalten und Layout.

8.2.1 Front- und Backend

Joomla ist in zwei Bereiche aufgeteilt – das Frontend und das Backend (Abbildung 14 und

Abbildung 15). Das Frontend ist letztendlich die Homepage, die der Besucher zu Gesicht

bekommt. Registrierte Benutzer können mit entsprechenden Rechten Artikel ändern

oder neu anlegen. Hierzu steht dem Autor ein komfortabler WYSIWYG-Editor zu

Verfügung. Über das Backend wird die Homepage administriert. Hier lassen sich

ebenfalls Artikel verändern oder neu angelegen, zudem werden in diesem Bereich die

Menüs und die Artikelstruktur verwaltet. Zusätzlich bietet das Backend die Möglichkeit

Erweiterungen, die den Funktionsumfang der Seite erhöhen können, zu installieren und

Einstellungen daran vorzunehmen. In Kapitel 8.4 werden einige davon vorgestellt.

Abbildung 14: Joomla Frontend mit geöffnetem Artikel

Abbildung 15: Joomla Backend mit geöffnetem Menü-Manager

Seite | 32

8.2.2 Zugriffsrechte und der resultierende Workflow

Die Benutzerverwaltung in Joomla ermöglicht eine Registrierung über das Frontend der

Internetseite. Je nach Konfiguration wird ein neues Mitglied automatisch, oder durch

einen Backendbenutzer freigeschaltet. Die zuteilbaren Rechte, insbesondere im Bereich

der Sichtbarkeitsattribute, sind im Gegensatz zu anderen Content Management System

nur recht grob gehalten. Es lassen sich aber die Grundzüge der in Kapitel 4.2

vorgestellten Konzepte umsetzen. Tabelle 4 zeigt die verfügbaren Benutzertypen auf.

Tabelle 4: Joomla Benutzertypen

Frontendbenutzer Registered: Kann sich über das Frontend einloggen und auf diese Weise in einen

privaten Bereich gelangen. Änderungen an der Seite sind nicht gestattet.

Author: Darf neue Inhalte in die Seite einfügen. Dies geschieht über einen Link im Benutzer-Menü des Frontends. Die Inhalte müssen allerdings durch einen Publisher oder Backend-Benutzer freigeschaltet werden. Ein Autor darf nur eigene Artikel ändern.

Editor: Hat zusätzlich zu den genannten Rechten die Möglichkeit, beliebige Inhalte im Frontend zu bearbeiten.

Publisher: Kann Inhalte erstellen, bearbeiten und auch freischalten. Damit wird es möglich, die gesamte inhaltliche Arbeit direkt den Frontend-Usern zu überlassen.

Backendbenutzer Manager: Ist in erster Linie für die inhaltlichen Funktionen zuständig. Sie haben

Zugriff auf Inhalt, Sektionen und Kategorien, Frontpage, Menüs und das Archiv.

Administrator: Darf zusätzlich Benutzer verwalten, Erweiterungen installieren, sowie den Papierkorb leeren. Hat keinen Zugriff auf die Templates und globale Einstellungen.

Super Administrator:

Diese Gruppe hat alle Rechte, die man innerhalb des Systems erlangen kann.

Joomla bietet zusätzlich eine Option, die Sichtbarkeit jedes Elementes das der

Präsentation von Informationen auf der Homepage dient (Menüs, Artikel,

Erweiterungen), für bestimmte Betrachter einzuschränken. Hierzu definiert es drei

Benutzergruppen (siehe Tabelle 5), die auf jedes dieser Elemente angewendet werden

können. Eigene Gruppen können nicht definiert werden. Zwar existieren „Hacks“, die

dieses Manko beheben sollen, von deren Benutzung ist aber abzuraten, da ihre Funktion

nach einem Update des CMS nicht garantiert ist. Dies führt Probleme mit der

Seite | 33

ArticlesCategoriesSections

Termine

Schulungen

Termin 1

Termin 2

Release-Termine

Termin 1

Benutzerverwaltung nach sich. Die Joomla Roadmap39 sieht die Einführung eines neuen

Systems vor, nennt aber kein konkretes Datum oder Versionsnummer.

Tabelle 5: Joomla Sichtbarkeitsattribute

Typ Sichtbar für… Public: alle Besucher der Seite

Registered: Besucher mit dem Status „Registered“

Special: alle registrierten Besucher, deren Status mindestens „Author“ ist

8.2.3 Verwaltung und Präsentation der Inhalte

Joomla nutzt zur Strukturierung der

gespeicherten Inhalte so genannte „Sections“

und „Categories“. Wie in Abbildung 16

gezeigt wird, kann eine Section verschiedene

Categories enthalten, welche wiederum

Artikel aufnehmen. Selbige können aus

Texten, Bildern und Links bestehen,

zusätzliche multimediale Inhalte wie Videos

oder Tondateien lassen sich über

Erweiterungen des CMS bzw. Plugins für den WYSISWG-Editor realisieren. Ein Artikel

verfügt über verschiedene Attribute, so hat er einen Titel, einen Einführungstext und

einen Haupttext. Des Weiteren lassen sich diverse Einstellungen bezüglich Autor, der

bereits erwähnten Sichtbarkeit und Beginn bzw. Ende der Veröffentlichung wählen. Bei

langen Artikeln können auf Knopfdruck Seitenwechsel eingebaut werden.

Abbildung 17 zeigt exemplarisch einen Dialog zur Erstellung eines neuen Inhaltes. Im

linken, oberen Bereich wird der Titel des Artikels eingetragen und über zwei Pull-down-

Menüs Section bzw. Categorie bestimmt. Darunter finden sich zwei Editorbereiche mit

vielseitigen Formatierungsmöglichkeiten, die jeweils Einführungs- und Haupttext

aufnehmen. Im rechten Bereich lassen sich zahlreiche Attribute des Artikels festlegen.

Hier wird bestimmt, ob er veröffentlicht werden kann und auf der Startseite erscheinen

soll. Zusätzlich lässt sich festlegen, ab bzw. bis wann dies der Fall ist und welchen

Benutzergruppen er innerhalb dieser Zeit angezeigt wird.

39dev.joomla.org/content/view/23/61/

Abbildung 16: Strukturierung der Inhalte

Seite | 34

Abbildung 17: Anlegen eines neuen Artikels im Backend

Joomla bietet verschiedene Optionen zur Präsentation der eingestellten Inhalte (siehe

Abbildung 18). Zum einen ermöglicht es die direkte Verlinkung eines Artikels, wobei

Titel, Einführungstext und Haupttext angezeigt werden, zum andern lassen sich auch

Links auf Sections oder Categories setzen. In diesem Fall werden nur Titel und

Einführungstext aller enthaltener Artikel untereinander angezeigt, ein zugehöriger Link

öffnet dann den Haupttext. Alternativ bietet sich eine tabellarische Übersicht der Titel.

Abbildung 18: Unterschiedliche Darstellungsformen für Inhalte in Joomla

Link auf Categorie Direkter Link

Menüeintrag

Artikeltabelle

Titel

Einführungstext

Haupttext

Menü

Seite | 35

Die Verbreitung von Inhalten ist aber nicht auf die eigentliche Homepage begrenzt.

Artikel können auch als RSS-Feed bereitgestellt und von Besuchern abonniert werden.

So bleiben Interessenten über Veränderungen der Seite informiert.

8.2.4 Templates

Joomla-Templates sind sehr einfach strukturiert und auch von Menschen mit wenig

Erfahrung im Bereich Webprogrammierung umsetzbar. Sie bestehen aus einer HTML-

und einem Stylesheet, optional können Grafiken enthalten sein, die für das Layout

benötigt werden. Innerhalb der HTML-Datei findet die Festlegung der groben Struktur

des Seitenlayouts statt, an den Positionen, die später dynamisch generierte Inhalte

anzeigen sollen, muss ein entsprechendes PHP-Tag eingefügt werden. Die CSS-Datei

enthält die Formatierungen für die Elemente des Templates und des von Joomla

generierten Codes.

Listing 2 zeigt exemplarisch den Auszug eines Joomla-Templates. Über DIV-Elemente

werden Bereiche für Kopfleiste, Menü, Content und Fußleiste definiert (orange

markiert). Zusätzlich finden sich zwei PHP-Tags (blau markiert) zur automatischen

Einblendung von Menü und Content. Das externe Stylesheet legt das Aussehen dieser

Basiselemente fest und enthält zusätzlich Schriftformatierungen für automatisch

generierte Artikelüberschriften.

Listing 2: Ein einfaches Joomla Template

HTML-Datei <body>

<div id="kopfleiste"></div>

<div id="menu_left">

<?php mosLoadModules ('menu'); ?>

</div>

<div id="content_right">

<?php mosMainBody(); ?>

</div>

<div id="fussleiste"></div>

</body>

CSS-Datei #kopfleiste{

height: 100px;

background: url(header.gif); }

#menu_left{

width: 170px;

float: left; }

#content_right{

width: 665px;

float: right;}

#fussleiste {

height: 50px;

background: url(footer.gif);

}

.contentheading {

color: #1f469c;

font-size: 15px;

font-weight: bold;}

Seite | 36

8.3 Barrierefreiheit in Joomla

Joomla erzeugt in der Version 1.0.x standardmäßig keinen barrierefreien HTML-Code.

Menüs und Artikel werden mit Hilfe von Tabellen strukturiert, was bei der Verwendung

eines Screenreaders zu Problemen führen kann. Dennoch bieten sich einige

Möglichkeiten, eine zumindest teilweise barrierefreie Homepage zu realisieren. Hierfür

bedarf es der Installation des 508 Hacks40, welcher alle Tabellen durch DIV-Elemente

ersetzt. Zudem sollte bei der Templategestaltung auf die in Kapitel 7 vorgestellten

Konzepte Rücksicht genommen werden, insbesondere im Hinblick auf:

- Eine übersichtliche, tabellenfreie Struktur

- Valides XHTML

- Schriftart und Schriftgröße

- Farbwahl

- Kontraste

Zusätzlich muss bei der Artikelerstellung auf Dinge wie alternative Bildbeschreibungen

und korrekt formatiere Überschriften geachtet werden. Die meisten für Joomla

verfügbaren Editoren vermögen hierbei Unterstützung zu leisten. Der größte

Schwachpunkt bleibt in den meisten Fällen der Mensch, der die Inhalte einpflegt.

8.4 Erweiterungen

Joomla lässt sich natürlich auch erweitern. Der zugehörige Abschnitt der

Projekthomepage41 verzeichnet ca. 2000 Projekte der unterschiedlichsten Bereiche

(Stand August 2008), von denen der größte Teil als Open Source Software verfügbar ist.

Sie sind in Components, Modules und Mambots unterteilt. Components erweitern das

CMS um komplexe Funktionen, wie zum Beispiel ein Forum oder eine Galerie und

enthalten in der Regel eine umfangreiche Programmlogik, die über einen gesonderten

Bereich des Backends konfiguriert wird. Modules sind im Gegensatz zu Komponenten

einfacher aufgebaut. Sie sammeln in der Regel Daten aus unterschiedlichen Quellen

(Wetter, Aktienkurse, die Überschriften der fünf aktuellsten Artikel der eigenen

Homepage) und zeigen diese an einer im Template festgelegten Position im Frontend

40 www.run-digital.com 41 extensions.joomla.org

Seite | 37

an. Mambots stellen im Editor verwendbare Platzhalter zu Verfügung, die zur Laufzeit,

also wenn eine Seite geöffnet wird, durch Programmcode ersetzt werden. So sorgt

beispielsweise das Tag {flv}flash_video{/flv} des AllVideos-Mambots42 dafür,

dass ein Flash-Video samt Flash-Player an der entsprechenden Stelle erscheint.

Nachfolgend sollen einige Komponenten kurz vorgestellt werden, die den Aufbau der

Webpräsenz eines Unternehmens unterstützen können.

8.4.1 JoomFish43

Bisher konnten nur für die Standardausgaben des Frontends unterschiedliche Sprachen

ausgewählt werden, die Seite an sich war aber immer einsprachig gehalten. Mithilfe von

Joomfish lässt sich echte Mehrsprachigkeit erlangen. Der Benutzer kann über ein Menü

oder Symbol die gesamte Website auf eine andere Sprache umstellen. Alle Inhalte

werden in einem Übersetzungsmanager in die entsprechenden Zielsprachen übersetzt,

dazu gehören neben den normalen Artikeln natürlich auch die Menüs und Kategorien.

Die Lokalisierung läuft nicht automatisch ab, sondern muss manuell realisiert werden.

Das Grundpaket der Erweiterung gestattet nur die Übersetzung von Elementen der

Joomla Kernanwendung, seine Funktion kann aber über ein Plugin System erweitert

werden. Für viele beliebte Joomla Erweiterungen existieren entsprechenden Dateien.

8.4.2 DocMan44

Diese Erweiterung dient zur Verwaltung digitaler Dokumente. Sie ermöglicht den Upload

von Dateien die verschiedenen, individuell definierbaren Benutzergruppen zugeführt

werden können. Jede Datei kann in einem Downloadbereich mit einer individuellen

Beschreibung und einer beliebigen Lizenz ausgestattet werden, die vor dem

Herunterladen bestätigt werden muss. DocMan eignet sich somit zur Bildung

geschlossener Arbeitsgruppen mit separaten Downloadbereichen.

42 schaufenster.joomlaportal.ch/107/content/view/162/45/ 43 www.joomfish.net 44 www.mambodocman.com/

Seite | 38

8.4.3 VirtueMart45

Hierbei handelt es sich um eine professionelle Online-Shop-Lösung, die sich nahtlos in

ein bestehendes Joomla Projekt integrieren lässt. Nachfolgend einige Features, die den

Funktionsumfang von VirtueMart verdeutlichen sollen:

- Beliebig viele Produkte, Kategorien und Unterkategorien

- Produktbilder

- Auch als Downloadshop für digitale Güter (MP3, Texte, Software) einsetzbar

- Rabattsystem für unterschiedliche Kundengruppen

- Kundenbenachrichtigungen (Zahlungseingang, Wiederverfügbarkeit von Ware)

- Verwaltung unterschiedlicher Länder und Währungen

- Unterschiedliche Steuersätze

- Automatische Versandkostenberechnung von verschiedenen Speditionen (DHL,

UPS, …)

- 128-Bit SSL Verschlüsselung

- Zahlung per Rechnung, Kreditkarte und Online Bezahlsysteme wie PayPal

8.5 Ausblick

Die nächste Joomla Version wird in absehbarer Zeit erscheinen und bringt in allen

Bereichen eine Vielzahl sinnvoller und auch nötiger Neuerungen mit sich:

- Nur noch ein Editorfenster nötig (früher jeweils für Einleitung und Haupttext)

- Lokalisierbares Backend (früher nur in Englisch verfügbar)

- Uneingeschränkte UTF-8 Tauglichkeit

- Erhöhte Zugänglichkeit und Barrierefreiheit

Abkehr von Tabellen zur Formatierung von Artikeln

Listenbasierte Menüs (keine Tabellen)

Verbesserung der Suchmaschinentauglichkeit

- LDAP Support

- XML-RPC Support zur Integration von Webservices (SOA)

- Ein neuer Datenbank Abstraktions Layer um unterschiedliche Datenbanken

unterstützen zu können

45 www.virtuemart.com

Seite | 39

9. Zusammenfassung

Web Content Management Systeme haben im Internet eine hohen Stellenwert erlangt.

Sie bieten Firmen, aber auch Privatpersonen die Möglichkeit, Informationen in

strukturierter Art und Weise anzubieten. Durch Konzepte wie die Trennung von Inhalt

und Layout oder die Ermöglichung der dezentralen Pflege von Inhalten, sind sie sehr

flexibel in ihrer Handhabung und dem Ansatz der statischen Webprogrammierung weit

überlegen.

Die Konzeption einer WCMS-basierten Internetpräsenz erfordert allerdings einige

Vorarbeit. Dies beginnt mit der Auswahl eines geeigneten Systems, das aktuelle, aber

auch zukünftige Anforderungen berücksichtigt. Hier konkurrieren viele kommerzielle

Anbieter um die Gunst der Kunden, doch auch im Open Source Bereich haben sich einige

Projekte zu einer ernsthaften Konkurrenz gemausert und sollten durchaus Beachtung

finden. Weiterhin bedarf es der Erstellung eines repräsentativen Templates und einer

gut geplanten inhaltlichen Struktur. Sind diese Vorraussetzungen erfüllt, so erhält man

eine zukunftssichere Plattform, mit der auf einfache Art und Weise Webinhalte verfasst

und präsentiert werden können.

Leider wird das Thema Barrierefreiheit in den meisten Produkten nur unzureichend

beachtet. Dabei besteht ein großer Bedarf an zugänglichen Internetangeboten, der

durch die deutsche und europäische Gesetzgebung unterstützt und vorangetrieben

wird. Webangebote des Bundes und der Länder müssen bereits barrierefrei gestaltet

werden. Hersteller, die schon heute solche Systeme anbieten, werden in naher Zukunft

einen erheblichen Wettbewerbsvorteil haben. Es dürfte sich also auch finanziell lohnen,

bestehende Produkte an diese Forderungen anzupassen.

Auch im Open Source Bereich lässt sich ein gewisser Fortschritt und ein Umdenken

feststellen. Am Beispiel von Joomla wurde gezeigt, dass in kommenden

Programmversionen auf eine erhöhte Flexibilität gesetzt wird. Durch die UTF-8

Zeichenkodierung und der Möglichkeit einer kompletten Lokalisierung des Systems

erschließt es sich nun einer noch breiteren Nutzergruppe. Auch das Thema

Barrierefreiheit soll zukünftig Berücksichtigung finden.

Es bleibt spannend.

Seite | 40

Anhang

I. Abkürzungsverzeichnis

API Application Programming Interface APS Application Service Providing B2B Business-To-Business B2C Business-To-Consumer BGG Gesetz zur Gleichstellung behinderter Menschen CMS Content Management System CSS Cascading Stylesheet DTD Document Type Definition ECMS Enterprise Content Management System EM equal M – Maßeinheit im Schriftsatz FTP File Transfer Protocol GPL General Public License HTML Hypertext Markup Language ICE Information and Content Exchange Protocol JPG Joint Photographic Experts Group - Bildformat LDAP Lightweight Directory Access Protocol MOS Mambo Open Source MP3 MPEG-1 Audio Layer 3 - Audioformat PDA Personal Digital Assistant PDF Portable Document Format PHP PHP: Hypertext Preprocessor PT Typografischer Punkt – Schriftsatzmaß PX Pixel RMI Remote Method Invocation RSS Really Simple Syndication SOA Serviceorientierte Architektur SSL Secure Sockets Layer UTF Unicode Transformation Format W3C World Wide Web Consortium WAI Web Accessibility Initiative WCAG Web Content Accessibility Guidelines WCMS Web Content Management System WYSIWYG What You See Is What You Get XHTML Extensible HyperText Markup Language XML Extensible Markup Language XML-RPC Extensible Markup Language Remote Procedure Call XSL Extensible Stylesheet Language XSLT Extensible Stylesheet Language Transformation

Seite | 41

II. Abbildungsverzeichnis

Abbildung 1: Der Content Lifecycle ............................... Fehler! Textmarke nicht definiert.

Abbildung 2: Arbeitsabläufe bei der Generierung statischer Internetseiten ...................... 7

Abbildung 3: Generierung von Inhalten in einem Content Management System .............. 9

Abbildung 4: Workflowaktivitäten ..................................................................................... 11

Abbildung 5: Zusammenfassung mehrerer Komponenten zu einem Artikel .................... 13

Abbildung 6: Umwandung von XML-Daten in andere Formate ........................................ 15

Abbildung 7: 3-Tier-Architektur ......................................................................................... 21

Abbildung 8: 4-Tier Architektur ......................................................................................... 22

Abbildung 9: www.spiegel.de für Normalsichtige (l) und Menschen mit Deuteranopie .. 26

Abbildung 10: www.pcpraxis.de ........................................................................................ 29

Abbildung 11: www.media-control.de .............................................................................. 29

Abbildung 12: Das Mambo Logo ........................................................................................ 30

Abbildung 13: Das Joomla! Logo ........................................................................................ 30

Abbildung 14: Joomla Frontend mit geöffnetem Artikel ................................................... 31

Abbildung 15: Joomla Backend mit geöffnetem Menü-Manager ..................................... 31

Abbildung 16: Strukturierung der Inhalte .......................................................................... 33

Abbildung 17: Anlegen eines neuen Artikels im Backend ................................................. 34

Abbildung 18: Unterschiedliche Darstellungsformen für Inhalte in Joomla ..................... 34

III. Tabellenverzeichnis

Tabelle 1: Beziehung zwischen dem Zustand des Dokuments und der beteiligten Rolle . 11

Tabelle 2: Generische Schriftarten (alle mit 11 Pt Größe) ................................................. 25

Tabelle 3: Joomla Systemvoraussetzungen ....................................................................... 29

Tabelle 4: Joomla Benutzertypen ...................................................................................... 32

Tabelle 5: Joomla Sichtbarkeitsattribute ........................................................................... 33

IV. Listingverzeichnis

Listing 1: Zwei Methoden zur Gestaltung einer Überschrift ............................................. 27

Listing 2: Ein einfaches Joomla Template .......................................................................... 35

Seite | 42

V. Quellen

Anja Ebersbach, Markus Glaser, Radovan Kubani: Joomla! - Das Handbuch für Einsteiger, Galileo

Computing, 2006

Balzert, Heide: Webdesign & Web-Ergonomie - Websites professionell gestalten,

W3L-Verlag 2004

Contentmanager.de – Stand August 2007

www.contentmanager.de

Deutsche Joomla Homepage – Stand August 2007

www.joomla.de

Graf, Hagen: Joomla! - Websites organisieren und gestalten mit dem Opne Source-CMS,

Addison-Wesley, 2006

Joomla Projekthomepage – Stand August 2007

www.joomla.org

Nix, Markus: Web Content Management - CMS verstehen und auswählen,

entwickler.press, 2005

Wikipedia – Stand August 2007

www.wikipedia.de

Eigenständigkeitserklärung

Hiermit versichere ich, Frithjof Klös, diese Seminararbeit selbständig

verfasst und nur die angegebenen Quellen und Hilfsmittel benutzt zu

haben.

Ort, Datum (Frithjof Klös)

Copyright 2007 Frithjof Klös.

All Rights Reserved.

Aside from my professor’s sole, personal review as part of his/her private, single-human,

software-free grading process (checking for plagiarism with Google is acceptable),

neither my professor nor my academic institution may otherwise copy, transfer,

distribute,reproduce, publicly/privately perform, publicly/privately claim,

publicly/privately display, or create derivative works (including ”digital fingerprints“) of

my copyrighted document (intellectual property).

The same restrictions apply to Turnitin.com and all similar services if my document

should somehow come into their possession. Neither my professor nor my academic

institution may submit my copyrighted document, in whole or in part, to be copied,

transformed, manipulated, altered, or otherwise used by or stored at Turnitin.com

(iParadigms, LLC) or any other physical or electronic database or retrieval system

without my personal, explicit, voluntary, uncoerced, written permission.

Regardless of supposed intent (e.g., ”to create a digital fingerprint”), no part of my

copyrighted document may be temporarily or permanently transferred, by any party, to

Turnitin.com or any other service, program, database, or system for analysis,

comparison, storage, or any other purpose whatsoever. Violators will be monetarily

punished to the fullest extent allowed by the DMCA (Digital Millennium Copyright Act),

the German Urheberrecht and/or international law.