- Typo 3
-
TYPO3
TYPO3 4.0.2 BackendBasisdaten Entwickler: Kasper Skårhøj, TYPO3 Association Aktuelle Version: 4.2.6
(10. Februar 2009)Betriebssystem: plattformunabhängig Programmiersprache: PHP Kategorie: Web-Content-Management-System Lizenz: GPL (Freie Software) Deutschsprachig: ja typo3.com typo3.org TYPO3 ist ein 1998 erschienenes freies Entwicklungsframework für mittlere bis große Websites, das von Kasper Skårhøj entwickelt wurde. TYPO3 basiert auf der serverseitigen Skriptsprache PHP. Als Datenbank wird häufig MySQL eingesetzt, möglich sind aber auch etwa PostgreSQL oder Oracle. Das System wird von dem ursprünglichen Autor und einer Community aktiv weiterentwickelt.
TYPO3 kann mit Plugins, sog. Erweiterungen (Extensions) um zahlreiche Funktionen und ganze Anwendungsprogramme erweitert werden, ohne dass ein eigener Programmcode geschrieben werden muss. Derzeit sind über 3.700 Erweiterungen verfügbar, darunter News, Shop-Systeme, Diskussionsforen und andere. Vorteilhaft ist die Mehrsprachigkeit von Front- und Backend, sowie die aktive Anwender- und Entwicklergemeinde aus aller Welt. TYPO3 gehört zusammen mit Drupal und Joomla! zu den bekanntesten Content-Management-Systemen aus dem Bereich der freien Software.
Inhaltsverzeichnis
Verwendung
Es wird geschätzt, dass TYPO3 weltweit mehr als 290.000mal eingesetzt wird[1]. TYPO3 stellt hohe Anforderungen an die Leistungs- und Konfigurationsfähigkeit des verwendeten Servers. Die Einarbeitungszeit für einen Website-Entwickler beträgt mehrere Wochen bis Monate, für einen Autor oder Redakteur normalerweise einige Stunden. Ein Entwickler, der eine TYPO3-Website einrichten möchte, muss sich in der Regel intensiv mit der Konfigurationssprache TypoScript beschäftigen.
Im Gegensatz zu kommerzieller Software gibt es bei TYPO3 keinen Support durch den Hersteller bzw. Entwickler, dafür aber durch die (zu einem Großteil deutschsprachige) Anwendergemeinde (Bugtracker[2], Foren[3], News-/Mailinglisten[4]) und eine große Anzahl an Web-Agenturen. Einige Firmen haben sich auch darauf spezialisiert, Webseiten in TYPO3 zu erstellen oder Hostingangebote mit vorinstalliertem TYPO3 anzubieten.
Bedienung
TYPO3 wird auf einem Webserver betrieben und von einem Webbrowser aus gesteuert. Hierfür ist keine Zusatzsoftware beim Redakteur erforderlich, nur der Webbrowser muss unterstützt werden. Die Nutzung von TYPO3 gliedert sich in drei große Bereiche: Die Erstellung des Website-Designs, die Konfiguration von TYPO3 mittels TypoScript und die Eingabe des Website-Inhalts. Die daraus entstehende Komplexität kann als Stärke, wie auch als Schwäche betrachtet werden.
TYPO3 enthält ein sog. Backend und ein Frontend. Die Verwendung dieser Begriffe weicht in TYPO3 von der klassischen Definition ab. Nach der klassischen Definition hat TYPO3 lediglich zwei Frontends für verschiedene Benutzerkategorien.
In TYPO3 meint der Begriff „Backend“ den im Webbrowser sichtbaren Teil von TYPO3, in dem die Website verwaltet wird. Dort werden Inhalte erstellt und bearbeitet. Ein Rich-Text-Editor, in dem Inhalte wie in einer Textverarbeitung (z. B. Word) formatiert werden können, erlaubt es gerade Anwendern ohne HTML-Kenntnisse redaktionelle Arbeit zu erledigen. Alternativ kann die Bearbeitung auch direkt über die dargestellten Webseiten (das „Frontend“) erfolgen. Diese Option muss vom Administrator freigegeben werden und bietet Autoren dann einen schnellen Einstieg in das System.
Funktion und Architektur
Zu den Funktionen gehören unter anderem zeitliche Steuerung zum Einblenden und Entfernen von Inhalten, Rollen- und Rechtesystem, Suchfunktion für statische und dynamische Inhalte, automatische Sitemap, Druckansicht, Nutzerverwaltung, Mehrsprachigkeit, suchmaschinenfreundliche URLs, die sich über verschiedene Zusatzmodule (sogenannte Erweiterungen), wie z. B. Gästebücher, Foren, Newsletter, Statistikmodule etc. erweitern lassen. Bilder, Texte, Tabellen, Animationen sowie externe Datenquellen können in TYPO3 verwaltet werden.
Templates (Formatvorlagen) erleichtern die Darstellung von Inhalten, in denen Seitenaufbau und Formate definiert werden (zum Beispiel an welcher Stelle die Navigationsleisten und Inhalte angezeigt werden, die Schriftfarben und -größen, die Positionierung von Überschriften). Inhalte werden über frei konfigurierbare Eingabemasken eingegeben, z. B. in Form des enthaltenen Rich-Text-Editors, der über eine an gängige Textverarbeitungen angelehnte, WYSIWYG-artige Oberfläche verfügt. Eine integrierte Bildverarbeitung ist vorhanden. Der Objektmanager gestattet es, grafische Elemente zu skalieren, zu drehen, Rahmen hinzuzufügen etc., wobei TYPO3 in Verbindung mit dem Bildkonverter ImageMagick und GDLib eine modifizierte Bilddatei im neuen Format erzeugt.
Die Inhalte und Parameter werden in einer relationalen Datenbank gespeichert und stehen unabhängig von dem jeweils verwendeten Template zur Verfügung. Dadurch kann das Erscheinungsbild einer Internetpräsenz allein durch Austausch des Templates vollständig geändert werden, ohne die Inhalte anzufassen, oder dieselben Inhalte in unterschiedlichen Layouts präsentiert werden.
Während in früheren Versionen die MySQL-Datenbank direkt angesprochen wurde, kann nun mit dem Database abstraction layer DBAL zwischen einer Anzahl gängiger SQL-Datenbanken gewählt werden, darunter als Open-Source-Alternative PostgreSQL, als kommerzielle Variante Oracle.
Ein integriertes Caching-System speichert Ergebnisse häufiger Datenbankaufrufe zwischen. So wird gerade bei stark nachgefragten Seiten die CPU-Belastung gesenkt, die Anzahl der Datenbankabfragen verringert und die Seite damit schneller ausgeliefert, wenn viele Nutzer die gleichen Informationen abrufen. Seit Version 4.1 verwendet TYPO3 im Backend auch Ajax.
Gestaltungselemente
Gestaltung und Programmierung mit TYPO3 kann über folgende Elemente erfolgen:
- Seitenbaum - Veränderung der Struktur und Eigenschaften der Seiten einer Website
- TYPO3-Konstanten - Universell gültige Parameter
- Erweiterungen - Einrichtung zusätzlicher Module
- HTML-Template: Einfaches HTML-Gerüst mit sogenannten Markern (z. B.: ###MARKER###) oder Subparts (z. B.: alles, was zwischen zwei Subparts steht, wird ersetzt ), die von TYPO3 durch unterschiedlichste Inhalte (Seitennavigation, Texte, Grafiken etc.) ersetzt werden. Alternativ können diese Marker durch die Extension Template Autoparser automatisch gesetzt werden.
- TypoScript-Template (unter "Template" – "setup"): Mit dieser etwas gewöhnungsbedürftigen internen Konfigurationssprache wird beschrieben, wie TYPO3 mit Markern und Subparts verfahren soll. Außerdem können damit Inhaltselemente konfiguriert werden.
- PHP: Die TYPO3-Funktionen sind in PHP geschrieben und können von Anwendern, die besondere Zusatzfunktionen realisieren wollen, geändert oder ergänzt werden.
Entwicklung
Geistiger Vater und ehemaliger Chefprogrammierer von TYPO3 ist der Däne Kasper Skårhøj. Die Weiterentwicklung des Systems teilt sich zur Zeit auf den 4.x-Zweig und die Version 5.0 auf, die von Michael Stucki respektive Robert Lemke geleitet werden. Aktuell ist der Versionszweig 4.2, der im April 2008[5] veröffentlicht wurde. In der Version 4.0 kamen einige Features hinzu wie Unterstützung von Workspaces, ein neuer Texteditor, diverse Änderungen an der Arbeitsweise von CSS-Styled-Content und Geschwindigkeitsverbesserungen. Version 3.8.1, die am 14. November 2005 veröffentlicht wurde, enthielt u. a. GraphicsMagick-Unterstützung und lässt das Zwischenspeichern der Seiten auf Proxy-Servern zu. Am 26. September 2004 wurde die Version 3.7 veröffentlicht, die u. a. eine erneuerte TYPO3-Engine enthielt. Am 30. April 2004 wurde die Version 3.6 von TYPO3 fertig gestellt, deren wichtigste Neuerung die Erzeugung von XHTML-konformem Quellcode der Standard-Content-Elemente ist. Außerdem wurde in diesem Jahr die TemplaVoila Template-Engine als Erweiterung eingeführt, die allerdings bis heute nicht Bestandteil des offiziellen TYPO3-Paketes ist. Daneben wurde u. a. eine Datenbank-Abstraktionsschicht (DBAL) geschaffen, mit der TYPO3 neben MySQL auch mit anderen Datenbanksystemen wie Oracle oder PostgreSQL eingesetzt werden kann. Neben der Weiterentwicklung des 4.x-Zweiges, für den unter anderem Verbesserungen in der Benutzerführung im Backend geplant sind[6], wurde bereits mit der Entwicklung von TYPO3 5.0 begonnen. Das Projekt wurde von Robert Lemke initiiert und setzt auf eine grundlegend neue Architektur für das System. TYPO3 5.0 wird auf einem eigens dafür entwickelten Framework basieren, das unter dem Namen FLOW3 als eigenständiges Projekt veröffentlicht wurde.
Erweiterungen
Um TYPO3 zu ändern oder zu ergänzen, werden eigenständige Programmteile, die sog. Erweiterungen, verwendet[7]. Bedeutsame und weit verbreitete Erweiterungen sind
- tt_news (Nachrichtensystem)
- Templa Voila (Templatingsystem)
- DAM (Digital Asset Management)
- static_info_tables (Informationen wie Länder, Sprachen und Währungen in lokalisierten Namen)
- tt_products (Shopsystem)
- sr_feuser_register (Frontend-Benutzerregistrierung)
- mm_forum (Forum)
- ve_guestbook (Gästebuch)
- realurl (Zur Erzeugung menschenlesbarer URLs)
- th_mailformplus und powermail (Mail-Formulare)
Entwickeln eigener TYPO3-Erweiterungen
TYPO3 wird intern über verschiedene PHP-Arrays gesteuert. Sie enthalten alle Informationen, die notwendig sind, um aus den in einer Datenbank gespeicherten Inhalten über TypoScript-Befehle HTML-Code zu erzeugen. In der Regel kann man fast jede Ausgabe und viele Backendeinstellungen über Änderungen der Konfiguration in den Arrays anpassen. Der dadurch während der Laufzeit der PHP-Skripte am Webserver benötigte Speicher ist deshalb nicht unerheblich.
Es empfiehlt sich, die TYPO3-Erweiterung „Kickstarter“ zu benutzen, mit der ein Grundgerüst für die gewünschten Funktionen automatisch erstellt werden kann. Je nach Bedarf kann man damit Frontend- oder Backenderweiterungen auswählen. Die benötigte Funktionalität wird dabei normalerweise in das TYPO3-Konfigurationsarray TCA eingebunden. Die erstellte Erweiterung enthält Dateien mit fest vorgegebenen Namen, die automatisch aufgerufen werden, zum Beispiel ext_localconf.php, ext_tables.sql und ext_emconf.php. Der Programmierer muss nur noch einzelne PHP-Funktionen programmieren, wobei häufig Funktionen, die schon vorhanden sind, kopiert und angepasst werden können. Nach der Installation der Erweiterung überprüft TYPO3 automatisch, ob die Erweiterung notwendige TYPO3-Standards einhält.
Der PHP-Quellcode, der bis TYPO3 Version 4.1 die Syntax der PHP-Version 4 und ab Version 4.2 PHP5 verwendet, besteht in der Regel aus Dateien, die jeweils eine Plugin-Klasse enthalten. Die Programmierung ist je nach Autor richtig objektorientiert oder man verwendet die Klassen nur im Sinne von Modulen. Jede Klassendatei enthält eine Einbindung einer sogenannten XCLASS am Ende. Diese können von Erweiterungs-Entwicklern mit einem bestimmten Namensschema selbst definiert werden und sollten von der Originalklasse abgeleitet sein. Sie werden immer anstelle der Originalklasse verwendet. Es wird jedoch empfohlen Hooks anstelle von XCLASS zu verwenden. Dabei wird eine bestehende Funktion über den Funktionsaufruf zu einer oder mehreren anderen Funktionen innerhalb von TYPO3-Erweiterungen beliebig erweiterbar gemacht.
Zertifizierung
Seit der TYPO3-Konferenz 2008 gibt es die Möglichkeit, sich offiziell zertifizieren zu lassen. Dazu werden in verschiedenen Städten weltweit zu bestimmten Terminen offizielle Prüfungen abgenommen. Den Beginn macht dabei die Zertifizierung zum so genannten „TYPO3 Integrator“, dessen Aufgaben laut Definition in der Templateerstellung, der Konfiguration von Erweiterungen und der Vergabe von Nutzerrechten bestehen. Er installiert jedoch nicht TYPO3 selbst auf einem Server und entwickelt selbst keine neuen Erweiterungen.[8]
Für weitere Aufgabenfelder sind ebenfalls Zertifikate in Planung.
Einzelnachweise
- ↑ TYPO3: Facts and Figures
- ↑ http://bugs.typo3.org
- ↑ http://www.typo3.net
- ↑ http://lists.netfielders.de/cgi-bin/mailman/listinfo
- ↑ http://wiki.typo3.org/TYPO3_4.2
- ↑ http://news.typo3.org/news/article/typo3-43-alpha-2/
- ↑ http://typo3.org/extensions/repository/
- ↑ Certification Team auf typo3.org
Literatur
Bücher
Die Titel sind absteigend nach Erscheinungsjahr sortiert.
- Patrick Lobacher: Certified TYPO3 Integrator Open Source Press, 2009, ISBN 978-3-937514-78-9
- Andrea Herzog-Kienast und Erwin Hontheim: Das TYPO3-Buch Open Source Press, 2009, ISBN 978-3-937514-80-2
- Andreas Stöckl und Frank Bongers: Einstieg in TYPO3 4.2 Galileo Press, 2008, ISBN 978-3-83621-234-2
- Christian Trabold, Jo Hasenau, und Peter Niederlag: TYPO3 Kochbuch (2. Auflage aktuell zu TYPO3 4.2) O’Reilly, 2008, ISBN 978-3-89721-851-2
- Patrick Lobacher: TypoScript kurz & gut. O’Reilly, 2008, ISBN 978-3-89721-536-8
- Franz Ripfel, Melanie Meyer, Irene Höppner: Das TYPO3 Profihandbuch Addison Wesley, 2008, ISBN 978-3-8273-2322-4
- Robert Meyer: Praxiswissen TYPO3. (Aktualisierte Auflage zu TYPO3 4.2) O’Reilly, 2008, ISBN 3-89721-869-0
- Alexander Ebner, Patrick Schuster: TYPO3 und TypoScript – Kochbuch Hanser Fachbuch, 2007, ISBN 978-3-446-41046-6
- Andrea Herzog-Kienast, Franz Holzinger: Der TYPO3-Webshop Open Source Press, 2007, ISBN 978-3-937514-43-7
- Michael Bielitza, Christoph Klümpel: TYPO3-Handbuch für Redakteure O’Reilly, 2007, ISBN 978-3-89721-479-8
- Werner Altmann, René Fritz, Daniel Hinderink: TYPO3. (2.Auflage) Open Source Press, 2006, ISBN 3-937514-18-X (offizielles Buch)
- Maik Caro, Christoph Lindemann: Content-Management mit TYPO3 Studienausgabe Franzis, 2006, ISBN 3-8273-6036-6
- Kai Laborenz, Prakash Dussoye, Andrea Ertel, Elmar Hinz, Thomas Wendt: TYPO3 4.0. Das Handbuch für Entwickler. Galileo Computing, 2006, ISBN 3-89842-812-5
- Robert Meyer: Praxiswissen TYPO3. O’Reilly, 2006, ISBN 3-89721-449-0
- Hubert Partl, Tobias Müller-Prothmann: TYPO3 4.x für Web-Autoren. Das Einsteigerseminar BHV Verlag 2006, ISBN 978-3-8266-7441-9
- Alwin Viereck: TYPO3. Der schnelle Einstieg in die Version 4, mitp Verlag, 2006, ISBN 3-8266-1681-2
DVDs
- Irene Höppner: TypoScript Videotraining (DVD-ROM) Addison-Wesley, 2006, ISBN 978-3-8273-6069-4
- Thomas Kötter: TYPO3 4.0 Das Video-Training – Von den Grundlagen bis zum professionellen Webauftritt Galileo Press, 2006, ISBN 3-89842-856-7
Artikel und Magazine
- T3N Magazin für TYPO3 & Open Source. yeebase media solutions, 2005, ISSN 1861-339X
- Alexander Wehrum, Claus Mückschel: Paradigmen des Open-Source-Konzeptes am Beispiel der Software TYPO3, Münster-Hiltrup: LW-Verlag, 2004, ISSN 0942-6620
Weblinks
- www.typo3.com – Offizielle Homepage mit allgemeinen Informationen
- typo3.org – TYPO3-Entwickler-Website: Download aktueller Veröffentlichungen und Erweiterungs-Module (englisch)
- Interview zu TYPO3 mit Kasper Skårhøj vom 29. April 2003
- flow3.typo3.org - Offizielle Homepage des Frameworks FLOW3 auf dem TYPO3 5.0 basiert
- forge.typo3.org - TYPO3 Forge - Offizielle Entwickler Plattform für TYPO3 4.X und TYPO3 5.X Erweiterungen sowie für diverse TYPO3-Teams (inkl. Subversion-Repositories, Wiki, News-Modul, Issue-Tracker, Roadmap-Tool, etc. für jede Erweiterung)
- Links zum Thema TYPO3 im Open Directory Project
Wikimedia Foundation.