
Start bis 15.4.2018

Eigene überschreibbare Styles für eine TYPO3-Extension
Eine Webseite besteht aus einem HTML-Gerüst (Layout), in welches unterschiedliche Content-Elemente gefüllt werden. TYPO3 stellt verscheidenen Content-Elemente zur Verfügung. Über Frontend-Extensions kann man leicht weitere Content-Elemente mit dazugehörigen HTML-Templates definieren. Manchmal brauchen diese Templates auch spezielle CSS-Definitionen. Die Stylesheets müssen, ob nun als Inlinecode oder als externe Resource, innerhalb des Head-Tags im HTML-Gerüst definiert werden. Da solche Ressourcen nur im benannten TypoScript-Object PAGE definiert werden können, da nur das erste PAGE-Objekt mit einem definierten typeNum-Value pro Seiten-Rendering ausgeführt wird und da der Name des PAGE-Object der Extension apriori nicht bekannt ist, kann eine Extension nicht einfach sicher immer seine eigenen Stylesheets in eine Website einbringen.
Einen möglichen Weg gibt es mindestens. Da vorm eigentlichen Rendering die ext_localconf.php der Extension aufgerufen wird, kann die Extension zu diesem Zeitpunkt schon das Singleton des PageRenderers aufrufen.
Über Konstanten der Extension kann man pflegbar die Pfade der CSS-Dateien hinterlegen oder sogar dynamische CSS-Definitionen ermöglichen, wenn man die Timer-Funktion des CMS-Systems nutzen möchte, um zeitlich variierende Stylesheets zu verwenden.
Hinweis zu dynamischen Stylesheets
Für das dynamische Rendering von Stylesheets wird eine eigene Page mit eigenem Typenum verwendet. Der Vorteil des dynamischen Renderings ist, dass man bestimmte Layouteigenschaften einer Webseite zum Beispiel zeitlich variable Ausschmückungen zulassen kann. Dies können Farben, Rahmen, Hintergrundbilder, Icons, Cursorgestaltungen oder andere Design-Accessiores sein. Freunde von verspielten Webseiten könnten auch daran denken, dass Farben und andere Designelemente einer Webseite vom Wetter, vom Sonnenstand oder vom Mondstand abhängig zu machen.