
Möchte man in TYPO3 ein Logo dynamisch per TypoScript in eine Seite einfügen, kann man entweder das TEXT-cObject mit direkter Ausgabe des img-HTML-Tags oder das TYPO3 eigenen IMAGE-cObject verwenden. Beide Varianten haben Unterschiede in Performance, Caching-Verhalten und Fehlersuche (-behandlung).
Vorteile der Variante Logo als TEXT einbinden
Das TEXT-Objekt ist das schnellste in TYPO3 überhaupt. Es finden, wenn keine stdWrap-Funktionen genutzt werden, nur wenige Schritte im PHP bis zur Ausgabe des Strings statt. Im Fehlerfall, wenn also das Bild z.B. nicht gefunden wurde, wird der HTML-Tag trotzdem ausgegeben. Das fehlende Logo ist auch im HTML sichtbar und kann sofort korrigiert werden. Es genügt hierbei, einfach die entsprechende Datei zur Verfügung zu stellen, einen Cache zu löschen ist nicht notwendig.
lib.myfastlogo = TEXT
lib.myfastlogo {
value = <img src="fileadmin/dmclogo.gif" alt="our logo"/>
typolink.parameter = 2
}
Vorteile des IMAGE-cObjects
Das IMAGE-cObject stellt viele Möglichkeiten zur Skalierung und Bearbeitung von Bildern zur Verfügung. Aber auch wenn man diese nicht nutzt, ist das IMAGE-cObjekt, zumal beim ersten Aufruf, deutlich langsamer als das TEXT-cObjekt. Die Daten des Bildes werden als md5-Prüfsumme in der Datenbank gecacht, aber auch der Abruf von Caches dauert länger als die direkte Ausgabe eines Caches. Im Fehlerfall (Logo-Datei wurde nicht gefunden) wird auch kein img-Tag ausgegeben. Dies erschwert die Suche danach, warum das Logo fehlt, hat aber auch den Vorteil, das Besucher nicht gleich bemerken, dass ein Bild fehlt. Möchte man die fehlende Datei hinzufügen, so muss man den TYPO3-Cache leeren, bevor das Bild wieder angezeigt wird. Ist das Bild nicht so auffällig, bleibt eventuell ein fehlendes Bild lange unerkannt. Dieses kann dann auch nicht in den Cache geschrieben werden und so sucht TYPO3 bei jedem Aufbau einer Seite erneut nach dem fehlenden Bild.
lib.myslowlogo = IMAGE
lib.myslowlogo {
file = fileadmin/dmclogo.gif
altText = our logo
stdWrap.typolink.parameter = 2
}
-
http://blog.oneserv.de Maxim
-
Nils Andre