Wir haben noch nicht alle älteren Artikel nachbearbeitet. Das bezieht sich in der Regel nur auf die Codebeispiele, die noch nicht optimal dargestellt werden.
Content-Management und Webstandards: TYPO3
In unserer Reihe über Content-Management-Systeme (CMS) beginnen wir mit dem Platzhirschen: TYPO3. Dieses CMS bietet Ihnen alles, was Sie für ein umfangreiches Webprojekt brauchen. Kai Laborenz zeigt Ihnen, wie gut TYPO3 mittlerweile mit Webstandards und Barrierefreiheit zurecht kommt.
TYPO3 ist ein ursprünglich vom Dänen Kaspar Skårhøj entwickeltes Web-Content-Management-System auf Basis von PHP und MySQL. Mit seinem enormen Funktionsumfang, einer flexiblen Erweiterbarkeit und für ein Open-Source-CMS umfassender Dokumentation hat es vor allem im deutschsprachigen Raum an Bedeutung gewonnen.
Funktionen wie Mehrsprachigkeit, Versionierung, eine kleinteilige Rechteverwaltung und die gut dokumentierte Schnittstelle für Erweiterungen machen es auch für große und leistungsfähige Websites interessant, bei denen sonst teure kommerzielle Systeme zum Einsatz kommen.
Zeit, sich einmal anzusehen, inwieweit TYPO3 für die Erstellung standardkonformer Websites geeignet ist.
Kurzbeschreibung TYPO3
In Diskussionen scheiden sich an der Bewertung von TYPO3 oft die Geister. TYPO3-Fans lieben den hierarchischen Seitenbaum im Backend, der alle Seiten einer Webpräsenz in einer Baum-artigen Struktur anzeigt. Auch die Grafikbearbeitungsfunktionen, die Bilder auf dem Server erzeugen oder manipulieren, finden sich bei kaum einem anderen Open-Source-CMS.
Umfassend konfigurierbar
TYPO3 ist sehr flexibel konfigurierbar und verwendet dazu ein zweistufiges Template-System. Das Grundgerüst einer Seite wird durch ein (X)HTML-Template bereitgestellt, welches an den dynamisch zu erzeugenden Stellen Platzhalter verwendet – z.B. für Menüs. Diese Zuordnung kann der TYPO3-Entwickler auch halbautomatisch aus der Struktur des Dokumentes erzeugen oder über einen grafischen Editor vornehmen.
Für die Steuerung der dynamischen Elemente besitzt TYPO3 eine eigene Konfigurationssprache – TypoScript genannt. Mit Hilfe von TypoScript lassen sich nahezu alle Aspekte einer TYPO3-Installation steuern. Das betrifft Aussehen und Verhalten der Menüs, aber auch das Erscheinungsbild des Backends für verschiedene Redakteure.
TypoScript ist allerdings keine Programmiersprache – für funktionale Erweiterungen besitzt TYPO3 eine Schnittstelle zur Entwicklung eigener Extensions in PHP. Einzigartig ist das "Extension-Repository": Aus einem öffentlichen Extension-Pool lassen sich mit wenigen Mausklicks Erweiterungen installieren, z.B.:
- ein digitales Medienmanagement,
- eine seiteninterne Suchmaschine, die auch PDFs, Word-Dokumente oder die Metadaten von Bildern (!) indexiert,
- eine Extension zum Erzeugen menschenlesbarer URLs,
- ein funktionsreiches Newssystem (optional mit Blog-Funktion) oder
- ein Konferenz-Managementsystem.
Selbst ein visuelles Tool zum "Zusammenklicken" einfacher Extensions ist vorhanden – der "Extension-Kickstarter".
Eine vollständige Liste der TYPO3-Funktionen befindet sich auf der TYPO3-Website.
Funktionsvielfalt und Flexibilität haben ihren Preis
Hauptkritikpunkt an TYPO3 ist die steile Lernkurve, die TYPO3 als System zum "Installieren und Loslegen" weniger geeignet macht. Zwar existieren eine Reihe von vorbereiteten Lösungen, aber ohne fundiertes Wissen um die Systemeigenschaften werden Veränderungen schnell frustrierend. Für Neueinsteiger wirkt das Backend in der Standardinstallation (mit einem Administratorlogin) einschüchternd. Für normale Redakteure kann es umfassend konfiguriert und nicht benötigte Optionen können ausgeblendet werden. Das allerdings setzt das oben erwähnte Wissen um die Systemgrundlagen voraus…
Die Vielzahl der vorhandenen Extensions stellt Anwender vor Auswahlprobleme, da es für viele Lösungen gleich mehrere Extensions gibt. Die Qualität der Extensions ist zudem recht unterschiedlich.
4 für die Webstandards
In den ersten Versionen von TYPO3 spielten Standards oder gar Barrierefreiheit keine große Rolle.
Mit der 2006 erschienenen Version 4 hat sich das allerdings grundlegend geändert. Die standardmäßige Ausgabe der Inhalte wurde von einem tabellenbasierenden auf modernes CSS-Layout umgestellt. Wichtige Extensions wie die Indexsuche wurden für eine valide Ausgabe ausgebaut (andere liegen bereits seit längerem in einer solchen Version vor, z.B. das Newssystem). Ein eigenes Entwicklungsteam befasst sich mit der Qualität des "Content Rendering". Mit Hilfe von Kernfunktionen oder Extensions kann darüber hinaus der resultierende Quellcode bereinigt werden – eine nützliche Funktion, da leider noch lange nicht alle Extensions validen Code produzieren. Im Backend kann der W3C-Validator eingebunden werden, um einzelne Seiten zu prüfen.
Inhaltseingabe durch Redakteure
Ein Problem der Qualitätssicherung ist in vielen Systemen die Eingabe von Inhalten durch die Redakteure, vor allem beim Einsatz von grafischen Editoren. TYPO3 verwendet standardmäßig den Editor HTMLArea (aber auch andere Editoren sind als Extension verfügbar). Per TypoScript kann der Editor selbst umfassend konfiguriert werden (es können die Buttons deaktiviert werden, die z.B. FONT-Elemente erzeugen). Außerdem können vom Redakteur eingegebene Inhalte auf dem Weg von Editor in die Datenbank und von der Datenbank in die Website überprüft und verändert werden. Mit einer entsprechenden Konfiguration lässt sich auf diesem Weg sogar aus Word kopiertem Text beikommen.
Mit der Extension TemplaVoila lassen sich ohne Programmierung eigene Eingabemasken definieren die den Einsatz eines grafischen Editors weitgehend überflüssig machen und die Formatierungsmöglichkeiten des Redakteurs weiter einschränken. So kann der Entwickler festlegen, dass ein Artikel aus einer Überschrift, einer Zusammenfassung, exakt einem Bild (das immer rechtsbündig in einer Breite von 200 Pixel angezeigt wird), einem Text und einer beliebigen Anzahl von Links besteht. Dadurch kann komplett auf einen grafischen Editor verzichtet werden.
Für die barrierefreie Ausgabe stehen eine Reihe von Extensions zur Verfügung:
- zur Generierung von barrierefreien Menüs mit Nummerierung und Acceskeys,
- für die automatische Auszeichnung von Abkürzungen und Akronymen oder gar
- ein komplettes Gerüst für eine barrierefreie Website.
Fazit
TYPO3 ist ein geeignetes Werkzeug, um nach den Webstandards zu entwickeln. In der Version 4 sind standardkonforme Ergebnisse für einigermaßen geübte Anwender kein Problem. Barrierefreieheit auf Knopfdruck kann auch TYPO3 nicht liefern. Die umfassende Konfigurierbarkeit und die große Flexibilität von TYPO3 stellt hohe Anforderung an die Kompetenz vor allem der Entwickler. Sie haben es in der Hand, ob eine TYPO3-Website standardkonform ist und auch über Jahre hinweg bleibt.
TYPO3 ist für Websites jeder Größenordnung geeignet. Aufgrund des hohen Lernaufwandes ist es allerdings wenig sinnvoll, sich für ein einzelnes Projekt einzuarbeiten oder sein erstes Projekt unter Zeitdruck zu beginnen.
Weiterführende Links
- TYPO3.com – Erste Anlaufstelle für Entscheider
- TYPO3.org – Erste Anlaufstelle für Entwickler
- Mailinglisten zum TYPO3-Projekt (auch als NNTP abrufbar unter news.netfielders.de)
- T3N – das gedruckte TYPO3-Magazin
- T3N-Artikel: TYPO3 und XHTML (PDF, Login erforderlich)
- T3N-Artikel: Barrierefreie CSS-Menüs mit TYPO3 (PDF, Login erforderlich)
- T3N-Artikel: Barrierefreiheit mit TYPO3 (PDF, Login erforderlich)
- TYPO3-kritischer Artikel beim Barrierekompass (etwas älter)
Barrierefreie TYPO3-Websites
- Theologisches Seminar Elstal (Goldene BIENE 2005)
- Theodor-Schäfer-Berufsbildungswerk (Bronzene BIENE 2005)
- Greenpeace Berlin (Bronzene BIENE 2005, BIK-Test 98,5 Punkte)
- Gehörlosen Institut Bayern
- Forschung für energieoptimiertes Bauen
Kommentare
xwolf
am 07.12.2006 - 12:05
Was IMHO sehr wichtig ist bei einem CMS und was ich mir noch als Ergänzung zu diesen Artikel wünsche, ist eine Aussage über die notwendige Manpower für die Administration.
Gerade Typo3 ist, sofern man es sorgfältig pflegen will und viele Module einsetzt, mit einem großen administrativen Aufwand verbunden. Möchte man einen gewissen Standard an Sicherheit und Qualität halten, ist es notwendig, die einzelnen Versionen der Module zu testen: Wie passen die zusammen mit anderen Module, müssen Templates wieder geändert werden, hat es (wieder) Einfluß aufs markup, weil ein Modulentwickler dummerweise (invaliden) HTML-Code im Code eingebaut hat, etc pp.
Kai Laborenz
am 07.12.2006 - 16:03
Konkrete Aussagen über die notwendigen Ressourcen zur Wartung lassen sich natürlich nur für einen Einzelfall treffen.
Richtig ist auf jeden Fall, dass je funktionsreicher und umfangreicher ein System ist, desto eher ist es wartungsintensiv. Das trifft auf Open-Source-Systeme (an denen viele mitentwickeln) vermutlich stärker zu als auf kommerzielle CMS-Produkte.
Andererseits habe ich schon das ein oder andere, Projekt miterlebt, in dem ein sehr großes kommerzielles System eingesetzt wurde. Zu der auch dort vorhandenen Komplexität kam erschwerend hinzu, dass Experten nur beim anbietenden Unternehmen verfügbar waren - bzw. eben auch nicht.
Bei TYPO3 ist es wichtig, nicht jede alpha- oder beta-Extension gleich im Produktivbetrieb einzusetzen. Es gibt inzwischen ein Rating-System (ob Extensions bereits bewertet wurden, ist ja auch schon ein Hinweis) und Quellen wie das T3N-Magazin stellen immer wieder Extensions vor.
Der "Nachteil" des sehr einfachen Extension-Installationssystems ist tatsächlich, dass auch Personen Extensions installieren können, die diese Dinge nicht selbst zu bewerten in der Lage sind.
Die Kommentare sind geschlossen.