TYPO3 CMS | |
---|---|
![]() | |
![]() TYPO3 CMS 10.4 Backend | |
Basisdaten | |
Hauptentwickler | TYPO3 Association |
Entwickler | Kasper Skårhøj,TYPO3 Association |
Erscheinungsjahr | 29. Mai 2001 |
Aktuelle Version | 13.4.4[1] (21. Januar 2025) |
Betriebssystem | plattformunabhängig |
Programmiersprache | PHP[2], JavaScript |
Kategorie | Content-Management-System (CMS) |
Lizenz | GPL (Freie Software) |
deutschsprachig | ja |
typo3.org |
TYPO3 CMS ist einfreiesContent-Management-System fürWebanwendungen, das vonKasper Skårhøj unter dem ursprünglichen NamenTYPO3 entwickelt und im Jahr 2001 veröffentlicht wurde. Heute wird die Software durch dieTYPO3 Association weiterentwickelt und überwiegend im deutschsprachigen Raum eingesetzt.[3]
Der Kern vonTYPO3 CMS ist in derSkriptsprachePHP mithilfe desWebframeworksSymfony programmiert. Die Ausgabe im Browser erfolgt mitHTML undJavaScript. AlsDatenbank können gängigeSQL-basierte Datenbanken, wie z. B.MySQL,MariaDB eingesetzt werden, die Anbindung erfolgt hier abstrakt überDoctrine DBAL.
Zahlreiche Funktionen vonTYPO3 CMS können mitErweiterungen (Extensions)[4] integriert werden, ohne dass ein eigenerProgrammcode geschrieben werden muss. Die derzeit etwa 9000 Erweiterungen stammen zum größten Teil von Fremdanbietern und sind zum Großteil kostenlos verfügbar. Erhältlich sind unter anderem Erweiterungen fürBlogs,E-Mail-Marketing,Programmierschnittstellen zu Fremdanbietern oder auchDiskussionsforen.[5] Das System bietet sowohl Mehrsprachigkeit als auchMulti-Site-Fähigkeiten.
TYPO3 CMS gehört nebenDrupal,Joomla undWordPress zu den bekanntesten Content-Management-Systemen aus dem Bereich der freien Software.
Der NameTYPO3 stammt daher, dass Kasper Skårhøj bei der Entwicklung durch einen Tippfehler (englisch „typing error“, kurz „typo“) einen Teil seiner Arbeit verlor. Die Zahl „3“ wurde dem Namen schließlich angehängt, nachdem die dritte Version vonTYPO durch ihren Erfolg als eine Art Marke bekannt wurde.[6]
Im Jahre 2015 wurde das bis dahin parallel von der TYPO3-Association entwickelte SystemeNeos vonTYPO3 getrennt. Seitdem trägtTYPO3 den NamenszusatzCMS.[7]
Laut der Statistik-Plattformbuiltwith wirdTYPO3 CMS aktuell (Februar 2024) von über 218.000 öffentlich erreichbarenWebsites weltweit eingesetzt.[8]
Die Version 11 desGovernment Site Builder (GSB) der deutschenBundesregierung basiert aufTYPO3 CMS und sie hat im Jahr 2023 angekündigt, alle Webseiten vonproprietären Systemen aufTYPO3 CMS umstellen zu wollen und insgesamt 108 Millionen Euro für die Weiterentwicklung, den Umzug und den Betrieb zur Verfügung zu stellen.[9][10]
TYPO3 CMS wird auf einemWebserver installiert und außer einem aktuellenWebbrowser ist keine Software für die Benutzung notwendig.
Das System ist unterteilt inBackend und Frontend. Das Backend inTYPO3CMS ist die Verwaltungsoberfläche, in der Anwender Inhalte verwalten, Einstellungen konfigurieren und die allgemeine Struktur und Funktionalität der Webanwendung kontrollieren. Das Frontend inTYPO3 CMS bezieht sich auf den Teil der Website, den die Website-Besucher sehen und mit dem sie interagieren können, einschließlich aller visuellen Elemente und Inhalte, die im Browser angezeigt werden.[11]
Mithilfe vonHTML (Hypertext Markup Language) und der systemeigenen KonfigurationsspracheTypoScript können Templates (englisch für Schablonen oder Vorlagen) erstellt und konfiguriert werden, um dasWebdesign abzubilden. Zur Pflege der Website-Inhalte steht dem Anwender im Backend einWYSIWYG-Editor zur Verfügung. Dieser erlaubt es dem Anwender, Inhalte ohne HTML-Kenntnisse (oderProgrammier-Kenntnisse) zu erstellen und zu verändern.
Zu den Funktionen gehören unter anderem zeitliche Steuerung zum Ein- und Ausblenden von Inhalten, ein Rollen-, Workspaces und Rechtesystem (Benutzerverwaltung), eine Suchfunktion für statische und dynamische Inhalte, suchmaschinenfreundlicheURLs, URL Weiterleitungsoptionen, Backend Dashboard, Extension Manager, ein Datei-Verwaltungssystem, Formulare, Aufgaben-Planer (Scheduled Tasks), Mehrsprachigkeit,Content Security Policy sowohl für das Backend als auch dasmehrsprachenfähige Frontend. Weitere, über verschiedene Erweiterungen (sogenannteExtensions[12]) integrierbare Funktionen sind beispielsweise ein News[13] / Blog[14] -System, Login-Bereich, Grid-System[15], Formulare, Adressen-Listen[16],Gästebuch, verbesserte Suche mit Facetten[17][18], das Verfassen und der Versand einesNewsletters oder eineStatistik für Seitenaufrufe. Videomaterial, Bilder, Texte, Tabellen, Animationen sowie externe Datenquellen können in TYPO3 CMS (zum Teil nur über extra Erweiterungen) verwaltet werden.
Templates, in denen Seitenaufbau und Formate definiert werden, erleichtern die Darstellung von Inhalten. Inhalte werden über frei konfigurierbare Eingabemasken eingegeben, zum Beispiel in Form des enthaltenenRich-Text-Editors, der über eine an gängige Textverarbeitungen angelehnte,WYSIWYG-artige Oberfläche verfügt. Eine integrierte Bildverarbeitung ist vorhanden. DerObjektmanager gestattet es, grafische Elemente zu skalieren, zu drehen, Rahmen hinzuzufügen etc., wobei TYPO3 CMS in Verbindung mit dem BildkonverterImageMagick undGDLib eine modifizierte Bilddatei im neuen Format erzeugt.
TYPO3 CMS 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 oder FLUID-Ausgaben HTML-Code zu erzeugen.
Die Inhalte und Parameter werden in einerrelationalen Datenbank gespeichert und stehen unabhängig von dem jeweils verwendeten Template zur Verfügung. Dadurch kann das Erscheinungsbild einer Website theoretisch allein durch Austausch des Templates vollständig geändert werden. Ebenso können dieselben Inhalte in unterschiedlichenLayouts oder Ausgabeformaten (zum BeispielXML,RSS oderLaTeX) präsentiert werden.
Während in früheren Versionen dieMySQL-Datenbank direkt angesprochen wurde, ist inzwischen derDatabase Abstraction Layer DBAL vorgeschaltet um andere Datenbanksysteme wiePostgreSQL oderOracle nutzen zu können.
Ein integriertesCaching-System speichert Ergebnisse vorher definierter Datenbankaufrufe zwischen. Dadurch wird gerade bei hoch frequentierten Websites die Server- (CPU)-Belastung gesenkt und die Anzahl der Datenbankabfragen verringert.
Gestaltung und Programmierung von Webseiten mit TYPO3 CMS erfolgt über:
###MARKER###
) und Bereichsmarkierungen, sog.Subparts verwendet. Inzwischen wird innerhalb von TYPO3 und in sogenanntenExtensions bevorzugt die Template-EngineFLUID verwendet. DasFluid-Framework wurde 2008 entwickelt und wird sowohl von TYPO3 als auch von dem abgespaltenen ProjektNeos verwendet.[19]Die Ausgabe von Inhalten im Frontend wird über die MetaspracheTypoScript gesteuert. Was inTypoScript definiert ist, wird in ein systemweites PHP-Array umgewandelt (geparst). Dieses wiederum steuert, welche PHP-Funktionen beim Aufruf der Seite ausgeführt werden. Damit können Eigenschaften und Erweiterungen global für die gesamte Website verwaltet werden.TypoScript ist (bezogen auf dieSyntax) objektorientiert.[20][21]
Das folgende Beispiel verdeutlicht, wie mitTypoScript eine „Hello World“-Ausgabe (Hallo-Welt-Programm) erzeugt werden kann. Voraussetzung für eine Ausgabe ist das Erzeugen einesPAGE-Objektes:
page=PAGEpage{10=TEXT10.value= Hello, world!10.wrap=<h2>|</h2>}
<h2>Hello, world!</h2>
Weitere wichtige TypoScript-Objekte sindCONTENT zum Auslesen von Inhalten aus der Datenbank undFLUIDTEMPLATE zum Rendern eines HTML-Templates.[22]
TypoScript bezeichnet der Regel die in den TypoScript-Templates festgelegte Konfiguration zur Frontend-Ausgabe; es gibt aber auch Backend-Konfigurationen, die (abgesehen von wenigen Ausnahmen) mit der gleichen Syntax notiert werden. Sie werdenUser TSconfig (Einstellungen für einen Backend-Benutzer oder -Benutzergruppe) undPage TSconfig (Einstellungen für das Backend, die für einzelne Seiten und deren Unterseiten gelten) genannt und werden unter dem BegriffTSconfig zusammengefasst.[23]
Für die EntwicklungsumgebungPhpStorm gibt esseit Mai 2014 einPlugin,[24] welches TypoScript als Sprache integriert. Dies gibt es auch für FLUID[25] Templating. Dieses bietet neben Syntax-Highlighting auch Unterstützung für Auto-Vervollständigung, Auto-Formatierung und diversen anderen Funktionen.
Erfinder und ehemaliger Chefprogrammierer von TYPO3 ist der DäneKasper Skårhøj. Die Entwicklung des Systems wird derzeit von Benni Mack (TYPO3 Project Lead) geleitet.[26][27]
Im Rahmen von Version 4.4, die am 22. Juni 2010 veröffentlicht wurde, ist das Design auf Basis der Ergebnisse der sogenanntenUser Experience Week (T3UXW) aus dem Vorjahr speziell hinsichtlich der Benutzerfreundlichkeit erneut verbessert worden. Zudem wurde mit dieser Version erstmals eine Demo-Website (genanntIntroduction Package) ausgeliefert, die es Erstnutzern ermöglicht, sich schneller mit den Funktionen des Systems vertraut zu machen.[28] Mit TYPO3 4.5 wurden die wichtigsten Bearbeitungsformulare neu strukturiert. In neueren Versionen wurde das Interface weiter aufgeräumt und unter anderem für die Darstellung auf mobilen Geräten optimiert.
Da die Version 5.0 über mehrere Jahre parallel zum 4.x-Zweig komplett neu entwickelt wurde, wurden neue Hauptversionen im Rahmen der TYPO3-Branch 4.x veröffentlicht. Die Nummerierung der Versionen wich aufgrund dieser Eigenheit von der sonst üblichen ab. Ab Version 4.0 sind bereits mehrere Hauptversionen mit neuen Features veröffentlicht worden. Innerhalb der jeweiligen Unter-Zweige gilt der sogenannte „Feature-Freeze“; es werden also mit kleineren Updates keine neuen Funktionen hinzugefügt, sondern lediglich Fehler behoben und Sicherheitslücken geschlossen.
Nachdem sich mehr und mehr zeigte, dass der ursprünglich als TYPO3 5.0 geplante Nachfolger sich von seinem Funktionsumfang und den möglichen Einsatzgebieten her nicht als Nachfolger eignet, sondern eher ein eigenständiges Produkt neben TYPO3 bildet, wurde im März 2012 beschlossen, diese Entwicklung auch durch einen anderen Namen deutlich zu machen: Als Arbeitstitel von TYPO3 5 wurde „Phoenix“ gewählt. Der offizielle Name lautete ab dann „TYPO3 Neos“. Um Verwirrung bei der Bezeichnung der folgenden TYPO3-Releases zu vermeiden, folgte auf TYPO3 4.7 als nächste Version nicht TYPO3 5.0, sondern direkt TYPO3 6.0. TYPO3 Neos ist in einer eigenständigen Version 1.0 auf den Markt gekommen, die Versionsnummer 5 wurde vollständig aus dem Versionszyklus des TYPO3-Projektes gestrichen.[29][30] 2015 wurde bekannt gegeben, dass Neos in Zukunft unabhängig von der TYPO3 Association weiterentwickelt werden solle.
Legende: | Ältere Version; nicht mehr unterstützt | Ältere Version; noch unterstützt | Aktuelle Version | Aktuelle Vorabversion | Zukünftige Version |
---|
Paket-Name | Version | Unter- version[31] | Veröffentlichung | Allgemeine Korrekturen bis | Sicherheitsrelevante Korrekturen bis | Wichtigste Änderungen |
---|---|---|---|---|---|---|
TYPO3 CMS | 3.x | Ältere Version; nicht mehr unterstützt: 3.0 | 2001[32] | Erste veröffentlichte Version. | ||
Ältere Version; nicht mehr unterstützt: 3.2 | Mai 2002[33] | Diverse Fehlerkorrekturen. | ||||
Ältere Version; nicht mehr unterstützt: 3.3 | 3. Juni 2002[34] | Diverse Fehlerkorrekturen. Erste über sourceforge verfügbare Version. | ||||
Ältere Version; nicht mehr unterstützt: 3.5 | 18. Februar 2003 | Diverse Fehlerkorrekturen. Mit Version 3.5.1 Einführung des Erweiterungs-Managers. Damit ist die Erweiterung von TYPO3 um von Benutzern geschriebene Module möglich. | ||||
Ältere Version; nicht mehr unterstützt: 3.6 | 30. April 2004[35] | Erzeugung vonXHTML-konformemQuellcode der Standard-Inhaltselemente, Inhaltselemente können in XML individuell definiert und gespeichert werden, Grundlagen zur Unterstützung von anderen Datenbanksystemen alsMySQL integriert.[36] | ||||
Ältere Version; nicht mehr unterstützt: 3.7 | 24. September 2004 | Vereinfachte Erstellung und Verwaltung mehrsprachiger Websites, Erweiterung der Rechteverwaltung für Redakteure, erneuerte TypoScript-Engine. | ||||
Ältere Version; nicht mehr unterstützt: 3.8 | 23. Mai 2005 | Mehrsprachigkeit des TYPO3-Backends mit sog. Language-Packs, Unterstützung vonGraphicsMagick, Verbesserung der mitgelieferten Websitesuche, Zwischenspeichern der Seiten auf Proxy-Servern ist möglich.[37] | ||||
Ältere Version; nicht mehr unterstützt: 3.8.1 | 14. November 2005 | Behebung einiger Fehler, einige sicherheitsrelevante Verbesserungen.[38] | ||||
4.x | Ältere Version; nicht mehr unterstützt: 4.0[39] | 7. April 2006 | Runderneuerung des Backends zur Verbesserung derBenutzbarkeit, sinnvollere Strukturierung des erzeugten HTML-Codes, Einführung von Skins, Workspaces (Möglichkeit Inhalte zu entwerfen und davon unabhängig zu veröffentlichen) hinzugefügt, Wechsel zu einem Texteditor mit größerer Unterstützung von Browsern und Betriebssystemen,DBAL für Nutzung von Datenbanksystemen wieOracle oderPostgreSQL hinzugefügt;[40] letzte Version: 4.0.13, 13. Sicherheits- und Stabilitätsaktualisierung. | |||
Ältere Version; nicht mehr unterstützt: 4.1[41][31] | 6. März 2007 | Schnellere Darstellung des Datei- und Seitenbaums durch Nutzung vonAjax, beschleunigte Darstellung des Backends, Einführung des Inline Relational Record Editing (kurz IRRE) zum gleichzeitigen Bearbeiten miteinander verknüpfter Datensätze, Verringerung des Bedarfs an Arbeitsspeicher, verbesserteUTF-8-Unterstützung, Vereinfachung von Wartungsarbeiten mittels einesCLI, Nutzung der Vorteile vonInnoDB;[42] letzte Version: 4.1.15, 15. Sicherheits- und Stabilitätsaktualisierung. | ||||
Ältere Version; nicht mehr unterstützt: 4.2 | 24. Mai 2008 | Zahlreiche Verbesserungen in der Benutzerführung im Backend, Nutzung von AJAX zum Zeigen erweiterter Optionen, Erweiterung der Funktionen des Texteditors, Integration eines verbesserten Frontend-Logins, vereinfachte Aktualisierung von Erweiterungen, Editor mitSyntaxhervorhebung für TypoScript, Verbesserungen der Workspaces;[43][44] letzte Version: 4.2.17. | ||||
Ältere Version; nicht mehr unterstützt: 4.3 | 30. November 2009[45] | Neues Frontend-Editing, vereinfachtes Hochladen mehrerer Dateien mitFlash, Einführung eines Papierkorbs für gelöschte Inhaltselemente, Integration eines Berichtsmoduls für einen schnellen Überblick über grundlegende Einstellungen der TYPO3-Installation, Integration eines Planers zur automatischen Ausführung von Aufgaben, Unterstützung von Bedingungen in TSconfig-Code, Integration vonSaltedHashes zum Passwortschutz, Erweiterungen extbase und Fluid integriert zur künftigen Migration zu TYPO3 5.0;[45] letzte Version: 4.3.14. | ||||
Ältere Version; nicht mehr unterstützt: 4.4 | 22. Juni 2010[28] | Komplettes Redesign des Backends, vereinfachte Installation, Modernisierung und Performanceverbesserungen im Backend, native Unterstützung weiterer Datenbanktypen, weitere Integration vonExt-JS-Komponenten, Bereitstellung eines Introduction Package für einen leichteren Einstieg, Kompression für CSS undJavaScript, Unterstützung von HTML5 im Frontend, Erweiterung um mehrere Handbücher zu ausgewählten Bereichen;[46] letzte Version: 4.4.15. | ||||
Ältere Version; nicht mehr unterstützt: 4.5 LTS | 26. Januar 2011[47] | März/April 2015[31][48][49] | März/April 2015[31][48][49] | Release mitLong-Term-Support (LTS) mit weiteren Verbesserungen hinsichtlich Benutzerinterface und Performance sowie zahlreichen neuen und überarbeiteten Funktionen. UTF-8 als Standardzeichensatz bei Neuinstallationen,HTML5 im Backend,[50] grundlegende Überarbeitung der wichtigsten Bearbeitungsformulare, Ausbau und Verbesserung der stdWrap-Funktion für ein schnelleres und flexibleres Frontend, grundlegende Überarbeitung des Erweiterungs-Managers, Integration eines Linkprüfers, neue Sicherheitsfunktionen zum Schutz vorCSRF.[51][52] Diese Version wird über einen Zeitraum von mindestens drei Jahren ab ihrer Veröffentlichung offiziell unterstützt werden, was unter anderem auch die Unterstützung vonIE6 bis April 2015 gewährleistet;[48] aktuell als Version 4.5.40. | ||
Ältere Version; nicht mehr unterstützt: 4.6 | 25. Oktober 2011[53][54] | Oktober 2012[31] | April 2013[31] | Internationalisierung mittelsXLIFF, neuer Formular-Assistent und neues Form-Objekt, Sicherheits-Verbesserungen, Performance-Verbesserung durch Aktivierung des Caching-Frameworks, grundlegende Bereinigung derCodebasis;[53][54][55] letzte Version: 4.6.18. | ||
Ältere Version; nicht mehr unterstützt: 4.7 | 24. April 2012[48][56] | Oktober 2013[31] | Oktober 2014[31] | Für Neuinstallationen vollständigeBarrierefreiheit für das Frontend gemäßWCAG undBITV,[57] Nutzung der neuen HTML5-Elemente in den Standard-Rendering-Anweisungen, etwa<audio> und<video> , Verbesserungen der TCEforms.[58] Vollständige Überarbeitung des Inhaltsrenderings, Bereitstellung eines auf Anforderungen der Bundesanstalt für Landwirtschaft und Ernährung basierenden Government Packages als Vorzeigeprojekt für barrierefreie Webseiten mit TYPO3;[30] letzte Version: 4.7.20. | ||
6.x | Ältere Version; nicht mehr unterstützt: 6.0[59] | 27. November 2012[60] | April 2014[61] | Integration eines File Abstraction Layers (FAL),Drag and Drop im Seitenmodul, aufgeräumter Erweiterungsmanager, Support fürIPv6,Namespace-Support, neues Handling der zentralen Konfigurationsdateien, vereinheitlichter Bootstrap für die unterschiedlichen Einstiegspunkte;[62][63] letzte Version: 6.0.14. | ||
Ältere Version; nicht mehr unterstützt: 6.1[59] | 30. April 2013[64][65] | Herbst 2014[61] | Verbesserungen des FAL, Aufwertung des Erweiterungs-Managers, der TCA ist jetzt stets geladen, Nutzung des mysqli-Moduls anstelle des mysql-Moduls uvm.;[66] letzte Version: 6.1.12. | |||
Ältere Version; nicht mehr unterstützt: 6.2 LTS[59] | 25. März 2014[67] | März 2017 | ELTS: März 2020 | Version mit Long Term Support. Möglichkeit automatischer Updates für den Core[68] und für Sprachen,[69] Responsive Image-Rendering, „Smooth-Migration“ für Nutzer von TYPO3 4.5 LTS, Modernisierung der Codebasis, uvm.,[70][71] aktuell als Version 6.2.48. Wird als kostenpflichtige ELTS (Extended Long Time Support) Version bis März 2020 unterstützt.[72] | ||
7.x | Ältere Version; nicht mehr unterstützt: 7.0 | 2. Dezember 2014 | Allgemeines Code-Cleanup, Geschwindigkeitsverbesserungen, Refresh des visuellen Erscheinungsbilds des Backends.[73] | |||
Ältere Version; nicht mehr unterstützt: 7.1 | 24. Februar 2015[48] | Responsive Backend, Code-Cleanup („Home Improvement“): Entfernen alter cObjects (z. B. HRULER, OTABLE u.v.m.), bessere Performance durch Nutzung des Composer-Autoloaders. | ||||
Ältere Version; nicht mehr unterstützt: 7.2 | 28. April 2015[48] | Bildercropping für Redakteure im Backend. Gliederung und Migration der Core-Inhaltselemente in verschiedene Systemextensions. Flexible Preview-URLs. Gestaltbarer Backend-Login.[74] | ||||
Ältere Version; nicht mehr unterstützt: 7.3 | 15. Juni 2015[48] | Composer Class Loader, Performance Optimierungen, Backend Inline Editing, Backend Login API.[75] | ||||
Ältere Version; nicht mehr unterstützt: 7.4 | 4. August 2015[48] | Backend Improvements, Improved file uploading, Editing forms with required fields.[76] | ||||
Ältere Version; nicht mehr unterstützt: 7.5 | 29. September 2015[48] | Hauptfokus: Finalisierung für LTS-Version | ||||
Ältere Version; nicht mehr unterstützt: 7 LTS | 10. November 2015[48] | April 2017 | November 2018 ELTS: November 2022 | Version mit Long Term Support (dreijährige Unterstützung),[77] aktuell als Version 7.6.40. Wird als kostenpflichtige ELTS-Version bis November 2022 unterstützt.[72] | ||
8.x | Ältere Version; nicht mehr unterstützt: 8.0 | 22. März 2016 | Die minimale PHP Version wurde auf7.0 angehoben. Die Templateengine Fluid, ursprünglich einBackport ausTYPO3 Flow, ist nicht mehr integraler Bestandteil, sondern wird als externe Abhängigkeit über Composer eingebunden. | |||
Ältere Version; nicht mehr unterstützt: 8.1 | 3. Mai 2016[78] | Integration desDoctrine DBAL und Überarbeitung des Workspace Modul mit Hilfe von Twitter Bootstrap and jQuery.[79] | ||||
Ältere Version; nicht mehr unterstützt: 8.2 | 5. Juni 2016[80] | Weitere Fortschritte bei der Integration desDoctrine DBAL.[71] | ||||
Ältere Version; nicht mehr unterstützt: 8.3 | 30. August 2016[81] | Verbesserungen des RTE.[48] | ||||
Ältere Version; nicht mehr unterstützt: 8.4 | 18. Oktober 2016[80] | Mobiles Backend. Erweiterung des Install-Tools um einen Abschnitt „Upgrade Analysis“, der auf neue und geänderte Einstellungen hinweist. Dort werden z. B. Änderungen des TCA und verwendete, aber veraltete TypoScript-Eigenschaften angezeigt. Dazu wird jeweils die zu jeder entsprechenden Änderung zugehörige Dokumentation angezeigt.[82] | ||||
Ältere Version; nicht mehr unterstützt: 8.5 | 20. Dezember 2016[83] | Neues Framework zur Erstellung und Bearbeitung von Formularen im Backend eingeführt. Erste Vorab-Version des neuenRich-Text-Editors CKEditor implementiert.[84] | ||||
Ältere Version; nicht mehr unterstützt: 8.6 | 14. Februar 2017[85] | Neuer Bildbearbeitungsassistent, der nun mehrere Crop-Varianten eines einzelnen Bildes erlaubt und die Möglichkeit einen Fokusbereich auszuwählen, der immer sichtbar sein soll, eingeführt.[86] Sprachsynchronisierungsfunktion, die festlegt, ob ein einzelnes Feld eines lokalisierten Datensatzes einen dedizierten Wert hat oder ob der Wert der übergeordneten Sprache übernommen werden soll, implementiert.[87] CSC (CSS Styled Content) ist nun vollständig kompatibel zu FSC (Fluid Styled Content) und teilt die gleichen Funktionen. CSC gilt jetzt als veraltet und befindet sich im Wartungsmodus. | ||||
Ältere Version; nicht mehr unterstützt: 8 LTS | 4. April 2017 | September 2018 | März 2020 ELTS: März 2024 | Aktuelle Version: 8.7.32[88], 8.7.56 (ELTS) | ||
9.x | Ältere Version; nicht mehr unterstützt: 9.0 | 12. Dezember 2017 | ||||
Ältere Version; nicht mehr unterstützt: 9.1 | 30. Januar 2018 | |||||
Ältere Version; nicht mehr unterstützt: 9.2 | 10. April 2018 | |||||
Ältere Version; nicht mehr unterstützt: 9.3 | 12. Juni 2018 | |||||
Ältere Version; nicht mehr unterstützt: 9.4 | 4. September 2018 | |||||
Ältere Version; nicht mehr unterstützt: 9 LTS | 30. Oktober 2018 | Mai 2020 | September 2021 ELTS: September 2024 | Aktuelle Version: 9.5.31[89], 9.5.48 (ELTS) | ||
10.x | Ältere Version; noch unterstützt: 10.0 | 23. Juli 2019 | Unterstützung vonSymfony 5.0 und PHP 7.4 | |||
Ältere Version; noch unterstützt: 10.1 | 1. Oktober 2019 | |||||
Ältere Version; noch unterstützt: 10.2 | 3. Dezember 2019 | |||||
Ältere Version; noch unterstützt: 10.3 | 25. Februar 2020 | |||||
Aktuelle Version:10 LTS | 21. April 2020 | Oktober 2021 | April 2023 ELTS: April 2026 | Aktuelle Version: 10.4.37[90], 10.4.45 (ELTS) | ||
11.x | Ältere Version; noch unterstützt: 11.0 | 22. Dezember 2020 | Unterstützt PHP 7.4 und 8.0 / MySQL 5.7+ / MariaDB / Postgres / SQLite | |||
Ältere Version; noch unterstützt: 11.1 | 23. Februar 2021 | |||||
Ältere Version; noch unterstützt: 11.2 | 4. Mai 2021 | |||||
Ältere Version; noch unterstützt: 11.3 | 13. Juli 2021 | |||||
Ältere Version; noch unterstützt: 11.4 | 7. September 2021 | |||||
Ältere Version; noch unterstützt: 11.5 | 5. Oktober 2021 | |||||
Aktuelle Version:11 LTS | 5. Oktober 2021 | März 2023 | Oktober 2024 ELTS: Oktober 2027 | Aktuelle Version: 11.5.38[91] | ||
12.x | Ältere Version; noch unterstützt: 12.0 | 4. Oktober 2022 | Neue TYPO3 Version 12.0[92][93] ist erschienen. Die Core-Veränderungen enthalten mehr als 1.600 Code-Änderungen und das Changelog der TYPO3 Version 12.0 dokumentiert etwa 100 Änderungen, die als „Features“ gekennzeichnet sind – einige davon sind klein, andere Änderungen groß.[94][95] | |||
Ältere Version; noch unterstützt: 12.1 | 6. Dezember 2022 | |||||
Ältere Version; noch unterstützt: 12.2 | 7. Februar 2023 | |||||
Ältere Version; noch unterstützt: 12.3 | 28. März 2023 | |||||
Aktuelle Version:12 LTS | 25. April 2023 | Oktober 2024 | April 2026 ELTS: April 2029 | Aktuelle Version: 12.4.17[96] – Die TYPO3 Version 12.4 wird als Long-Term-Support-Release für mindestens drei Jahre mit Sicherheitsupdates versorgt.[97] | ||
13.x | Ältere Version; noch unterstützt: 13.0 | 30. Januar 2024[98] | ||||
Ältere Version; noch unterstützt: 13.1 | 23. März 2024[99] | |||||
Ältere Version; noch unterstützt: 13.2 | 2. Juli 2024 | April 2026 | Oktober 2027 ELTS: Oktober 2030 | Verbesserte Backend-UI und Schema-API[100] |
Mit Hilfe von Erweiterungen kann der Funktionsumfang von TYPO3 CMS erweitert oder dessen Verhalten geändert werden. Dabei können diese eigenständigen Programmteile Änderungen in praktisch allen Bereichen vornehmen, u. a. indem sie neue Inhaltselemente (beispielsweise zum Anzeigen eines Nachrichtensystems) einführen, dem Backend ein neues Modul hinzufügen oder Einfluss auf den Login-Prozess nehmen.
Einige Erweiterungen liegen der offiziellen TYPO3-CMS-Version bereits bei, weil sie besonders oft benötigt werden oder für den Betrieb erforderlich sind. Diese Erweiterungen werdenSystem Extensions genannt. Der Großteil der Erweiterung liegt imTER (TYPO3 Extension Repository) von dem sich die Erweiterungen kostenlos herunterladen lassen. Seit der Version 6.2 ist auch die Installation aus demComposer System möglich. Diese Erweiterungen werden entwederTER Extensions oderLocal Extensions genannt.[4]
Eine andere Unterscheidung stellt deren Kategorisierung dar. Eine Erweiterung kann die Voraussetzungen für mehrere Kategorien gleichzeitig erfüllen, so dass es dem Entwickler obliegt zu entscheiden, welche Kategorie den Hauptzweck der Erweiterung am besten beschreibt. Die Kategorien sind im Einzelnen:
Erweiterungen werden im Backend mit Hilfe des Extension-Managers installiert, der sich auch direkt mit demTER verbinden kann, um die Erweiterung herunterzuladen. Er verwaltet dabei auch Abhängigkeiten, indem er beispielsweise auf eine fehlende zweite Erweiterung hinweist, die zum Betrieb einer ersten zu installierenden Erweiterung benötigt wird, oder indem er die Deinstallation einer Erweiterung verhindert, wenn andere installierte Erweiterungen auf dieser basieren.Der Anwender kann sich auch verfügbare Updates zu installierten Erweiterungen anzeigen lassen und diese direkt installieren.
Seit der TYPO3 Version 6.2 ist es möglich, die Extensions aus demComposer System heraus zu „pflegen“[101], das Hinzufügen oder Entfernen von Extensions ist dann direkt im T3 Backend nicht mehr möglich.
Es empfiehlt sich, die TYPO3-Erweiterung „Extension Builder“[102] zu verwenden, mit der ein Grundgerüst für die gewünschten Funktionen automatisch erstellt werden kann. Je nach Bedarf kann man damit Frontend- oder Backenderweiterungen erstellen bzw. vorbereiten. Das Erscheinungsbild der Formulare wird dabei in das Konfigurationsarray TCA eingebunden. Die erstellte Erweiterung enthält Dateien mit fest vorgegebenen Namen, die automatisch aufgerufen werden, zum Beispielext_localconf.php,ext_tables.sql undext_emconf.php. Der Programmierer muss nur noch einzelne PHP-Funktionen programmieren. Bei der Installation der Erweiterung überprüft TYPO3 automatisch, ob die Anforderungen der Erweiterung erfüllt sind (benötigte Pakete/Version etc.).
Der PHP-Quellcode besteht in der Regel aus Dateien, die jeweils eine Plug-in-Klasse enthalten. Die Programmierung ist je nach Autor objektorientiert, oder man verwendet dieKlassen nur im Sinne vonModulen. Jede Klassendatei enthält eine Einbindung einer sogenanntenXCLASS 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 vonXCLASS zu verwenden. Damit wird eine bestehende Funktion über den Funktionsaufruf zu einer oder mehreren anderen Funktionen innerhalb von TYPO3-Erweiterungen beliebig erweiterbar gemacht.
Ab der Version 4.3 besteht die Möglichkeit, Erweiterungen auf Basis neuer Techniken zu programmieren, die von TYPO3 Flowportiert wurden. Dazu zählen unter anderem dasModel-View-Controller-Framework, das in TYPO3 4.3 in der Erweiterungextbase integriert wurde, und dieTemplate-EngineFluid.
Seit der TYPO3 Version 11 ist diePHP Version 7.4 eine neue Mindestanforderung[103] für die Entwicklung von Extensions. PHP 7.4 wird bis November 2021 mit Sicherheitsupdates versorgt.
Seit der TYPO3 Version 12 ist diePHP Version 8.1 und dieMySQL-Version 8.0 eine neue Mindestanforderung[104] für die Entwicklung von Extensions. Diese Version verspricht unter anderem eine bessere Leistung und verbesserte Typsicherheit. Darüber hinaus wird PHP 8.1 bis Nov. 2024 und PHP 8.3 bis Nov. 2026 mit Sicherheitsupdates versorgt.
Durch Erweiterungen lassen sich die verschiedensten Funktionen modular integrieren. Einige davon sind:
Zahlreiche deutschsprachige Websites, etwa die Website des LandesSachsen-Anhalt, die Website des Telekommunikationsanbieterscongstar, derUniversität Konstanz, derUniversität Luzern, derTechnischen Universität Berlin und derHochschule Fulda, die Website desDeutschen Fußball-Bundes, derDeutschen Lebens-Rettungs-Gesellschaft oder die meisten Webseiten der Ortsverbände derBundesanstalt Technisches Hilfswerk (THW)[105], oder dem LandRheinland-Pfalz[106] basieren auf TYPO3 CMS[107].
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 sogenannten „Certified TYPO3 Integrator“,[108] dessen Aufgaben in der Templateerstellung, der Konfiguration von Erweiterungen und der Vergabe von Nutzerrechten bestehen. Er installiert jedoch nicht TYPO3 CMS selbst auf einem Server und entwickelt selbst keine neuen Erweiterungen.[109] Die Notwendigkeit einer Zertifizierungsmöglichkeit für TYPO3 CMS, ist mit der Steigerung des öffentlichen Bekanntheitsgrades der freien Software und des damit einhergehenden Einsatzes von Agenturen und Freelancern. Vielen habe allerdings die nötige Erfahrung im Umgang damit gefehlt, weshalb die erzielten Resultate oft nicht den Anforderungen des Kunden entsprochen hätten.Bis Ende August 2012 konnten Zertifizierungen für eine bestimmte TYPO3-Version (z. B. TYPO3 4.x) erlangt werden. Seit dem 1. September 2012 ausgegebene Zertifizierungen sind nicht mehr auf eine bestimmte Version beschränkt, sind aber zeitbeschränkt. Seit 2018 beträgt die Laufzeit des Zertifikats 24 Monate und kann einmalig um weitere 12 Monate verlängert werden (z. B. durch die Teilnahme eines Auffrischungsworkshops auf der TYPO3 CertiFUNcation). Dies dient dazu, die Qualität der Zertifizierungen hoch zu halten.
Das TYPO3 Education Committee arbeitet daran, die Zertifizierungsprüfungen auf dem aktuellen Stand zu halten. So gibt es mittlerweile neben der ursprünglichen Zertifizierung zum TYPO3 Integrator (TYPO3 CMS Certified Integrator, TCCI) auch entsprechende Zertifizierungen zum Entwickler (TYPO3 CMS Certified Developer, TCCD), Redakteur (TYPO3 CMS Certified Editor, TCCE) und Berater (TYPO3 CMS Certified Consultant, TCCC). Jede Zertifizierung fragt entsprechendes Wissen zu der jeweiligen Rolle ab, um ein bestmögliches Gesamtergebnis zu gewährleisten.
Verantwortlich für die Erstellung, Aktualisierung und Durchführung der Zertifizierungen ist das TYPO3 Education Committee, das von der TYPO3 Association einberufen wurde. Aktueller Leiter des Education Committees[110] (seit 2017) ist Marc Willmann. Das gesamte Education Committee arbeitet ehrenamtlich.
Die Zertifizierungsprüfungen werden auf vielen offiziellen (TYPO3 Developer Days, TYPO3 CertiFUNcation Day) und inoffiziellen Veranstaltungen (TYPO3Camps in wechselnden Städten) abgenommen. Zudem besteht seit 2021 die Möglichkeit, die Prüfung online abzulegen. Dabei wird die ordnungsgemäße Durchführung der Prüfung durch einen Proctoring-Dienstleister sichergestellt.
Einmal pro Jahr findet als offizielles Event der TYPO3 Association der TYPO3 CertiFUNcation Day statt. Auf dieser Veranstaltung können Zertifizierungen erworben und bestehende Zertifizierungen verlängert werden. Der Name deutet auf den Veranstaltungsort hin: Der CertiFUNcation Day findet immer in einem Freizeitpark statt, so dass berufliche Weiterentwicklung und Spaß zusammengeführt werden. Während der Pandemie wurde der CertiFUNcation Day abgesagt; die Verlängerungen der Zertifizierungen wurde ersatzweise online durchgeführt.
Mit dem TYPO3-Award werden die besten TYPO3-Projekte prämiert. Bereits 2008 wurde im Rahmen der TYPO3-Snowboard-Tour eine vorläufige Verleihung von Preisen eingeleitet.[111] Dieses Event etablierte sich ab 2015 zu einem festen Bestandteil der TYPO3-Veranstaltung „T3CON“. Oberstes Ziel der TYPO3-Awards ist seitdem die Auszeichnung von „kreativen und nutzerfreundlichen Websites“[112] und die Auswahl der „besten Erweiterung, des schicksten Designs und der effektivsten Nutzung von aktuellen Technologien“.[113] Die Awards wurden bisher in Amsterdam (2015) und München (2016) in themenspezifischen Kategorien vergeben. Aus der engeren Auswahl der Nominierten – der„Shortlist“- bestimmt eine mehrköpfige Fachjury aus den Bereichen Kundenorientierung, Mobile & Social Media, TYPO3 und Webdesign den jeweiligen Gewinner in der Kategorie.[114]