Vererbung in TypoScript Templates nutzen
Motivation
Die Idee zu diesem Beitrag entstand, als wir von einem Interessenten gebeten wurden, uns dessen TYPO3-System anzusehen. Er hatte bemängelt, dass strukturelle Änderungen, die von seinem Programmierer durchgeführt wurden, jedes Mal sehr lange dauern würden.
Negativbeispiel
Als wir uns die TypoScript-Templates ansahen, wurde schnell deutlich, was die langen Bearbeitungszeiten verursachte: Der Programmierer (ein TYPO3-Neuling) hatte das Root Template in die Startseite eingefügt und danach in alle Unterseiten kopiert. Prinzipiell funktioniert das, aber sobald Änderungen am TypoScript-Code notwendig sind, müssen diese in allen kopierten Templates nachgezogen werden.
Best Practice
Der hauptsächliche Teil der TypoScript-Programmierung sollte im so genannten Root Template in der Startseite ("Homepage") einer Website enthalten sein.
Man kann ein Root Template anlegen, indem man in der Startseite einen neuen Template Record anlegt, der vom Typ "Template für neue Seite" ist - im Gegensatz zu "Erweiterungs-Templates", welche auf Unterseiten verwendet werden.
Bei der Ablage von TypoScript-Code gibt es zwei Möglichkeiten:
1. Man speichert alle Anweisungen in einem einzigen Root Template. Dieses Template kann je nach Komplexität der Website aber sehr umfangreich werden.
2. (Unsere Empfehlung) Man verteilt die Anweisungen auf mehrere Templates, die dann in das eigentliche Root Template eingebunden werden. Die Aufteilung kann z.B. nach Websitebereichen erfolgen (Navigationen, Header, Footer, Content etc.).
Der Code eines TypoScript-Templates wird auf alle darunter liegenden Seiten vererbt. Es ist also nicht notwendig, das gesamte Template auf die Unterseiten zu kopieren.
Sollen in einer Unterseite bestimmte Anweisungen des Root Templates nicht oder in anderer Weise ausgeführt werden genügt es, nur den dafür notwendigen Code anzupassen. Ebenso ist es ausreichend, Template-Code, der für Extensions benötigt wird, nur (per "Erweiterungs-Template") auf den Seiten einzubinden, auf denen sich die jeweilige Extension befindet.
Wichtig bei Erweiterungs-Templates ist es, dass keine Häkchen in den Checkboxen bei "Constants" und "Setup" (unter "Löschen" im Reiter "Optionen") gesetzt sind, da sonst alle vererbten TypoScript-Anweisungen ignoriert werden würden.
Weiterlesen
Gib jetzt den ersten Kommentar zu diesem Artikel ab!
Besucher fanden diese Seite unter folgenden Suchbegriffen: