TYPO3 Extension mit Extbase und Fluid
Das Content Management System TYPO3 kommt bereits mit einem reichhaltigen Schatz an Funktionen. Für den Aufbau einer Webseite braucht man aber meist zusätzliche Funktionen, die man in seine Webseite einbaut. Beispiele dafür sind:
- Eine Nachrichtenverwaltung
- Eine Bildergalerie
- Eine Suchfunktion
- Ein Kontaktformular
- Eine Eventverwaltung
- Ein Blog
Die Liste lässt sich beliebig fortsetzen. Es gibt mittlerweile mehrere Tausend Extensions, die auf der Basis von Extbase und Fluid programmiert sind. In den vergangen Jahren ist diese Art der Programmierung weiter standardisiert worden, heute müssen sich Entwickler an klare Richtlinien zum Aufbau einer Verzeichnisstruktur und zum logischen Aufbau einer Extension halten. TYPO3 Extensions setzen zudem das Konzept des MVC um: Die Trennung zwischen der Modellierung der Daten, dem View als Ansicht der Daten und dem Controller zur Berechnung von Daten.
Die richtige TYPO3 Extension finden
In diesem Kapitel schildern wir Ihnen den grundlegenden Aufbau einer TYPO3 Extension mit Extbase und Fluid. Zudem zeigen wir Ihnen, wie man Extensions findet und in einer Webseite einbaut.
TYPO3 Extensions
Alle Extensions, die man offiziell in TYPO3 einbinden kann, sind über das TYPO3 Extension Repository (TER) verfügbar. Diese Benutzeroberfläche ist in den letzten Jahren von ihrer Funktion her erweitert und benutzerfreundlicher gestaltet worden.
Aber wie findet man nun eine Extension für eine bestimmte Anwendung? Wir geben Ihnen einige Erläuterungen dazu.
Installation einer TYPO3 Extension
Wenn Sie eine TYPO3 Extension für Ihren Anwendungszweck gefunden haben, müssen Sie diese in Ihr System einbinden. Der beste Weg, wenn Sie nicht den Composer nutzen, ist das Herunterladen einer ZIP-Datei. Wir beschreiben Ihnen in diesem Teil des TYPO3 Tutorials von Thomas Berscheid, wie Sie eine Erweiterung auf Ihrem Webserver installieren.
Update und Refactoring
Extensions für TYPO3 gibt es schon seit rund 20 Jahren. Von Zeit zu Zeit gibt es Updates für Extensions. Dabei werden Teile des Quellcodes umgeschrieben oder ergänzt. Mehr zu den Gründen dazu und wie Sie die richtige Extension für Ihren Zweck finden erfahren Sie in diesem Teil unseres TYPO3 Tutorials.
Aufbau einer Extension
Eine TYPO3 Extension setzt das MVC-Konzept um. Dies bedeutet, dass zwischen Daten, Verarbeitung und Darstellung unterschieden wird. Damit setzt TYPO3 mit den Sprachen Extbase und Fluid eines der Grundprinzipien der objektorientierten Programmierung um.
Erfahren Sie in diesem Kapitel, wie eine Extension in TYPO3 aufgebaut ist und welchen Grundlagen die Programmierung folgt.
Datenbank und Tabellen
Eine TYPO3 Extension kann mit einer Datenbank zusammenarbeiten. Dies ist nicht grundsätzlich notwendig, für das Auslesen und die Darstellung von Inhalten aber meist der Grund, warum man eine Extension schreibt. Die Tabellen einer Extension müssen in einer klaren Form benannt sein. Erfahren Sie in diesem Kapitel mehr über die Grundzüge der Datenbank für Extensions.
Eigene Views und Layouts
TYPO3 ist ein Content Management System, das sich bereits mit einer reichhaltigen Auswahl von Funktionen installieren lässt. Mit Hilfe einer großen Anzahl von TYPO3 Extensions lassen sich die Funktionen fast beliebig erweitern. Damit lässt sich schon einmal eine Menge Arbeit in der Programmierung und damit viel Geld sparen!
Was ist aber wenn das Layout einer Extension nicht ganz in das Design der Webseite passt? Wie man eine Extension mit geringem Aufwand auf ein eigenes Layout anpasst, schildern wir Ihnen in diesem Kapitel.
Provider Extension
Mit einer Provider Extension können Sie die Konfiguration Ihrer TYPO3 Webseite in eine eigene Erweiterung verlagern. Die Extension lässt sich einfach versionieren, updaten und migrieren.
Lesen Sie mehr über die Vor- und Nachteile verschiedener Varianten, Quelltexte für TypoScript, CSS, HTML und JavaScript zu verwalten.
Facettierte Suche
Die TYPO3 Extension Faceted Search ist seit Jahren auf mehreren Webseiten der Agentur IBK im Einsatz. Diese Suche bietet einige Vorteile gegenüber der Indexed Search, die als Standard im Core von TYPO3 eingebunden ist. Die Eingabemaske und die Ergebnisliste kann man mit eigenen Fluid Templates gestalten. Zudem kann man einen eigenen Indexer schreiben.
DSGVO und Cookie Consent
Mit der Einführung der Datenschutzgrundverordnung (DSGVO) und der Cookie Richtlinie der EU in den Jahren 2018 und 2019 ist es für Betreiber von Webseiten verpflichtend geworden, den Besuchern der Webseite die Möglichkeit zu geben, Cookies wahlweise ab- und abzuschalten. Für TYPO3 gibt es einige Extensions, die diese gesetzlichen Vorgaben zum Cookie Consent umsetzen.
Wir haben dafür zwei TYPO3 Extensions im Einsatz. Diese stellen wir Ihnen mit einer kurzen Beschreibung und ausführlichem TypoScript als Codebeispiel zur Konfiguration vor.