Was TYPO3-Entwicklung in der Praxis bedeutet
Die meisten Anfragen beginnen nicht mit einer technischen Anforderung, sondern mit einem Ärgernis: Inhalte lassen sich nur mit Umwegen pflegen, eine zweite Sprache passt nicht ins Konzept, oder eine Funktion existiert doppelt, weil zwei Extensions dasselbe versuchen.
Solche Symptome haben fast immer dieselbe Ursache. Die Installation ist über Jahre gewachsen, jede Anforderung wurde einzeln gelöst, und niemand hatte den Auftrag, das Ganze zusammenzuhalten. Entwicklung heißt dann zuerst: verstehen, was da ist, und entscheiden, was bleibt.
Das Sitepackage als Fundament
In TYPO3 gehört alles, was das Aussehen und die Struktur einer Seite ausmacht, in eine eigene Extension. Templates, TypoScript, Backend-Layouts, Konfiguration der Inhaltselemente: gemeinsam ergeben sie das Sitepackage.
Der Vorteil ist unspektakulär, aber entscheidend. Alles liegt in Dateien, Dateien liegen in Git, und Git beantwortet die Frage, warum etwas so ist, wie es ist. Konfiguration, die nur in der Datenbank steht, beantwortet diese Frage nie.
TYPO3-Programmierung oder Konfiguration?
Viele Anfragen zur TYPO3-Programmierung lassen sich ohne eine Zeile PHP lösen. TYPO3 ist in weiten Teilen ein Konfigurationssystem: Was ein Inhaltselement kann, steht im TCA, wie es gerendert wird, in Fluid und TypoScript. Wer dort ansetzt, bleibt im vorgesehenen Rahmen und behält die Update-Fähigkeit.
Echte Programmierung beginnt, wo eigene Datenmodelle, Geschäftslogik oder Schnittstellen im Spiel sind: ein Buchungsvorgang mit Zuständen, ein Import, der Daten prüft und zusammenführt, eine Auswertung, die es so nirgends gibt. Dann entsteht eine Extbase-Extension mit Modell, Repository und Controller.
Die Unterscheidung ist keine Wortklauberei, sondern die Grundlage jeder Aufwandsschätzung. Konfiguration ist überschaubar und leicht zu ändern, eigener Code will getestet, dokumentiert und bei jedem Major-Update mitgeführt werden. In welche der beiden Kategorien deine Anforderung fällt, sagen wir dir vorher.
Eigene Extensions, wenn der Standard nicht reicht
TYPO3 bringt viel mit, und der Extension-Katalog deckt weitere Standardfälle ab. Eine eigene Extension lohnt sich, wenn eigene Datenstrukturen im Spiel sind: Produkte mit Varianten, Veranstaltungen mit Anmeldung, Standorte mit Öffnungszeiten, Bewerbungen mit Dateianhang.
Wir bauen solche Erweiterungen mit Extbase, weil damit Backend-Modul, Validierung und Frontend-Ausgabe aus einem Datenmodell entstehen. Das kostet am Anfang etwas mehr Sorgfalt und spart sie später bei jeder Änderung wieder ein.
An Redakteure gedacht
Eine Installation ist erst fertig, wenn die Leute damit arbeiten können, die täglich darin arbeiten. Wir beschriften Felder in der Sprache des Hauses, blenden aus, was im konkreten Fall nicht gebraucht wird, und setzen Voreinstellungen so, dass der übliche Fall ohne Nachdenken funktioniert.
Wie das im Backend aussieht, zeigen wir vor der Übergabe. Wenn dabei auffällt, dass ein Ablauf umständlich ist, ändern wir ihn, solange es noch günstig ist.