Zum Inhalt springen

Was ist TYPO3?

Das Content Management System TYPO3 (CMS) eignet sich hervorragend für komplexere Anforderungen. Die Software ist Open Source und unter der  GNU General Public License Version (Lizenzen TYPO3) kostenfrei verfügbar.

  • TYPO3 ist im deutschsprachigen Raum sehr weit verbreitet. Bis zum Ende des Jahres 2017 wurden mehr als 500.000 Internetauftritte mit dem System umgesetzt.
  • Mehr als 79.000 Entwickler sind offiziell bei typo3.org registriert, aktive Entwickler werden auf ca. 25.000 geschätzt.
  • 1997 startet Kasper Skårhøj mit der Entwicklung des System, 1998 sind die ersten Versionen verfügbar.
  • Die Veröffentlichung der ersten offiziellen TYPO3 (Version 3.0) folgt drei Jahre später in 2001.
  • 2004 wird die TYPO3 Association gegründet, diese koordiniert die Weiterentwicklung des Systems.
  • Es werden die Programmiersprachen PHP, SQL und Javascript verwendet.
  • Das CMS ist Betriebssystem-unabhängig.

Wer steht hinter TYPO3?

Koordiniert wird die Weiterentwicklung des Systems von der TYPO3 Association. Die Association ist ein Verein nach schweizerischen Recht mit Sitz in Baar (Kanton Zug). Mitglieder sind hauptsächlich Digitalagenturen und andere Technologieunternehmen, die auf TYPO3 setzen. Die Finanzierung des Weiterentwicklung des Systems erfolgt aus Mitgliederbeiträgen, Spenden und gebührenpflichtigen Veranstaltungen.

2016 wurde zusätzlich die TYPO3 GmbH gegründet. Diese bietet verschiedene Dienstleistungen rund um das System, wichtig zum Beispiel der Extended Support für ältere TYPO3-Versionen. Daneben sind Projekt-Reviews und unterschiedliche Service Level Agreements buchbar.

Wann macht TYPO3 Sinn?

TYPO3 ist ein Enterprise-CMS und eignet sich für die Umsetzung und den Betrieb von Internetseiten mit komplexen Anforderungen. Diese Anforderungen lassen sich in die im folgenden beschriebenen fünf Teilbereiche einteilen.

StrukturellerAufbauRedakteure,WorkflowsSchnittstellenAssetManagement
Dimensionen CMS

Asset Management

Die Kernaufgabe jedes CMS und eine der großen Stärken von TYPO3 ist die Verwaltung der unterschiedlichen Inhalte eines Internetauftritts. Auch bei großen Datenmengen läuft TYPO3 performant und stabil.

Ein leistungsstarker File Abstraction Layer ermöglicht es Datein zu organisieren und mit beliebigen Meta-Informationen anzureichern. Diese dienen zum Beispiel der Kategorisierung oder der Verknüpfung von Inhalten nach definierten Regeln.

Durch das TYPO3 Storage Management ist die Ablage von Daten nicht begrenzt auf den eigenen Server, d.h. externe Dienste (z.B. Amazon Cloud oder Dropbox) können zur Datenhaltung genutzt werden.

Sprachen und Länder

TYPO3 bietet alle Möglichkeiten zur Lokalisierung von Website-Inhalten, d.h. zum Umgang mit Sprach- und Ländervarianten. Das komfortable Translation Handling und Multi-Domainfähigkeit sind Bestandteile des TYPO3-Cores und werden entsprechend bei jedem Core-Update mitgeliefert. Es müssen keine Extensions für die Verwaltung von Sprach- und Ländervarianten installiert werden. Sollen bestimmte Inhalte auf unterschiedlichen Länderportalen angezeigt aber nur einmal zentral gepflegt werden (shared Content), ist das im Rahmen einer Multidomain-Instanz ebenfalls möglich.

Rechte und Rollen

Das TYPO3 Rechte- und Rollenmanagement ist sehr granular aufgebaut. Eine Vielzahl von Berechtigungsoptionen ermöglicht es in der Regel exakt zugeschnittene Rollen aller relevanten Benutzergruppen zu konfigurieren. Das Rollen - und Rechtemanagement ist ebenfalls Bestandteil des TYPO3-Cores und kann auf alle Extensions angewendet werden.

Workflows

In Kombination mit dem Rollen- und Rechtemanagement kann das TYPO3 Workflow-Management unterschiedlichste Abläufe zur stufenweisen Produktion, Freigabe und Publikation von Website-Inhalten abbilden. Auch beim Workflow handelt es sich um eine TYPO3-Core-Funktionalität.

Schnittstellen

Dank der sauberen Datenhaltung ist TYPO3 für jede Form des Datenaustausches sehr gut vorbereitet. Die Identifikation und der Zugriff auf gewünschte Datensätze ist sauber möglich. TYPO3 kann zur Ausgabe von Daten in unterschiedlichen Formanten z.B. JSON, XML, u.a konfiguriert werden. Das erhöht die Flexibilität enorm, da auf Wunschformate der annehmenden Stelle eingegangen werden kann.

 

Wie sicher ist TYPO3?

Eine sehr große Entwicklergemeinde sorgt für Unabhängigkeit von einzelnen Agenturen und eine kontinuierliche Weiterentwicklung von TYPO3. Gesteuert wird die Weiterentwicklung des Systems von der TYPO3 Association. ​ TYPO3 verfügt über ein eigenes Security Team, welches kontinuierlich Sicherheits-Updates für den Core zur Verfügung stellt. ​ Weiterhin werden auch zentral Sicherheitslücken bei 3rd Party Extensions gemeldet. Bei kritischen Patches erfolgt eine Vorankündigung. So kann ein Update eingeplant werden, bevor die Sicherheitslücke offiziell „disclosed“ wird. ​ Grundsätzlich gilt TYPO3 als sicherer als andere OpenSource CMS Projekte (siehe auch https://sucuri.net/reports/).​

Maßnahmen kultwerk

  • Nutzung von Core Komponenten oder APIs: Vermeidung von unnötiger Komplexität und potentiellen Sicherheitslücken.​
  • Core-Komponenten und TER Extensions werden nicht überschrieben, um Updatefähigkeit des Systems so weit wie möglich zu erhalten. ​
  • Bei der Entwicklung von Custom-Extensions (bspw. Veranstaltungsmodul) wird bei kultwerk besonders darauf geachtet, dass jeglicher User-Input im Frontend richtig “sanitized” wird. Sowohl in der Persistierung, um z.B. SQL-Injections nicht möglich zu machen, aber auch in der Ausgabe, um z.B. XSS Angriffen keinen Vector zu schaffen. ​
  • 3rd Party Extensions werden nur zugelassen, wenn diese auch wirklich benötigt werden. Das reduziert die Codebasis und vermeidet potentielle Sicherheitslücken.​
  • Coding Guidelines PSR-1 und 2, bzgl. Autoloading 0 oder 4​

TYPO3 Versionsverlauf

TYPO3 wird kontinuierlich weiterentwickelt. Den Fahrplan für die Weiterentwicklung kommuniziert die TYPO3 Association transparent auf ihrer Website (vgl. Development Roadmap TYPO3.org).

Größere Systemsprünge (Major Releases z.B. von  TYPO3 Version 8 auf 9) wurden zuletzt ungefähr alle zwei Jahre veröffentlicht. Für die jeweils überholte Version werden auch nach Release der neueren Version für einem Zeitraum von ebenfalls circa 2 Jahren (Sicherheits-)Updates angeboten.

Mit einem Major-Release erfolgt ein Core-Update und ein Update der sogenannten System-Extensions. Andere Systemerweiterungen sind zum Zeitpunkt des Releases nicht in allen Fällen verfügbar.

Außerdem werden in der Anfangsphase des Livebetriebs einer neuen Version immer die letzten Kinderkrankheiten behoben. Deshalb empfiehlt es sich erst auf einer neuen Version aufzusetzen, wenn diese einige Zeit in Betrieb ist und besser beurteilt werden kann.

TYPO3 Support Timeline

Kleinere (Sicherheits-)Updates erfolgen kontinuierlich (z.B. von TYPO3 Version 8.2.14 auf 8.2.15) und sollten auch regelmässig installiert werden. Der Update-Zyklus kann davon abhängig gemacht werden, wie komplex und wie sicherheitskritisch die Anwendung ist. Grundsätzlich empfiehlt es sich aber einmal monatlich die Notwendigkeit von Updates zu prüfen.

Exemplarischer Versionsverlauf TYPO3

Regular Maintenance

Während die TYPO3-Organisation bereits an einer neuen Hauptversion arbeitet, stellt sie für die aktuelle Version kostenlos Sicherheits- und Bugfix-Updates zur Verfügung.​

Priority Bugfixes / Patches

Im Anschluss werden für die betreffende Version weiterhin kritische Sicherheitsupdates bereitgestellt. Diese stehen ebenfalls ca. eineinhalb Jahre kostenlos zur Verfügung.​

Extended Support (kostenpflichtig) / ELTS

Danach endet der kostenfreie Support seitens der TYPO3-Organisation.  Für weitere zwei Jahre kann der kostenpflichtige Extended Support bei der TYPO3 GmbH erworben werden.​​ Preise und Verfügbarkeiten ELTS: typo3.com/ordering

Wie ist TYPO3 aufgebaut?

Der Kern von TYPO3 ist in der Skriptsprache PHP geschrieben. Für die Basiskonfiguration von einer TYPO3 Instanz kommt zudem TypoScript zum Einsatz. TypoScript ist eine systemspezifische Konfigurationssprache. Als Datenbank kommt im Allgemeinen MySQL zum Einsatz, andere SQL-basierte Datenbanken wie MariaDB, PostgreSQL oder Oracle sind ebenfalls möglich.

Typo 3Backend-ModuleFrontend-PluginsSystemExtension APICorePHPmySQLApache
Systemarchitektur TYPO3

Extbase

Extbase ist das Basis-Framework für die Entwicklung von eigenen TYPO3-Erweiterungen und folgt dem MVC-Prinzip (Modul View Controller). Dadurch wird eine saubere Trennung zwischen Datenhaltung, Steuerung und Ausgabe der Elemente gewährleistet. Extbase ermöglicht den DDD-Ansatz (Domain Driven Design) in der Konzeption und Entwicklung von neuen Modulen (Custom Extensions).

Fluid Content Elemente

Fluid Content Elemente (FCE) dienen der strukturierten Darstellung von spezifischen Website-Elementen, die die Komplexität von Standardelementen übersteigt.

Welche TYPO3 Erweiterungen gibt es?

TYPO3-Extensions dienen dazu den Leistungsumfang des Kernsystems zu erweitern. Extensions, die besonders oft verwendet werden oder die für den Betrieb der Website zwingend notwendig sind, werden System-Extensions genannt. Diese Extensions sind Bestandteile der offiziellen TYPO3-Version und werden von der TYPO3 Association bei sogenannten Major-Updates direkt mitgeliefert. Beim allergrößten Teil der verfügbaren Extensions handelt es sich um sogenannte TER-Extensions. Diese liegen im TYPO3 Extension Repository (TER), einem zentralen Server, von dem diese Extensions kostenlos heruntergeladen werden können.

Custom-ExtensionsTER-ExtensionsCore-ExtensionsCore
TYPO3 Extensions

Core Extensions 

Core Extensions werden von der TYPO3 Association entwickelt und mit dem Core des Systems ausgeliefert. Sie bilden die Grundlage für die Entwicklung von Basisbausteinen (Bsp. Kontaktformular, Suche).

TER Extensions

TER Extensions stammen aus der TYPO3 Community (Third Parties) und werden im TYPO3 Extensions Repository (TER) veröffentlicht und dokumentiert. Diese Extensions werden von kultwerk nur verwendet, wenn sie absolut notwendig sind. Das reduziert die Code Basis,  vermeidet potentielle Sicherheitslücken und reduziert Probleme bei zukünftigen Updates. Folgende TER Extensions sind grundsätzlich Bestandteil unserer Projekte:

Custom Extensions

Custom Extensions werden für sehr spezifische Projektanforderungen auf Basis von TYPO3 Extbase und TYPO3 Core Entwicklungsstandards programmiert.

Welche Hosting Anforderungen stellt TYPO3?

Serveranforderungen

  • Betriebssystem: Unix (z.B. Linux), Windows oder Mac
  • Webserver: Apache, NGINX, IIS
  • Middleware: PHP
  • Datenbank: MySQL (oder andere Datenbanken die von Doctrine DBAL unterstützt werden)
  • Hardware: min. 256 MB RAM
  • (Quelle: Requirements TYPO3.org)
  • mehr zu den Serveranforderungen

Client zur Nutzung des TYPO3-Backends

Grundsätzlich kann jeder moderne Browser mit grafischen Oberfläche und aktiviertem JavaScript für die Pflege von Inhalte im TYPO3-Backend verwendet werden. Wir empfehlen die jeweils neuesten Versionen Google Chrome oder Mozialla Firefox.