Zitat von
MartinL
...da ich ungern an 7 Ecken rumschrauben würde um etwas umzusetzen, wofür Contao vielleicht schon eine schöne Lösung bereithält.
Hallo Martin, deinen Ansatz, wie du ihn oben beschrieben hast, finde ich genau richtig. Allerdings musst du auch bedenken, was das Design betrifft, dass dir Contao nur den sehr guten HTML-Code liefert. Das CSS ist dann deine Sache und hat nichts mit Contao zu tun. Natürlich kann man mit CSS Elemente auch übereinander legen.
Da du eine pflegeleichte Lösung suchst, nenne ich dir noch diese hier:
Erstelle das Bild-Element und benutze ein eigenes Template, z.B. ce_image-header-background. In das Template schreibst du dann nur diesen Code:
PHP-Code:
<?php
#dump($this->arrData);
$GLOBALS['TL_HEAD'][] = '
<style>
header {
background-image: url('.$this->singleSRC.');
}
</style>
';
Mit der auskommentierten Funktion dump() kannst du dir alle Variablen des Templates anzeigen lassen, falls du neugierig bist. Das geht nicht mehr in Contao 4, aber da gibt es andere Möglichkeiten. $this->showTemplateVars() müsste in 4 aber auch noch funktionieren.
Wenn du dann später mal auf jeder Seite ein anderes Bild haben möchtest, kannst du die Erweiterung [pageimage] benutzen, um jeder Seite ein eigenes Bild zuzuweisen. Dieses Bild könnte man dann auf ähnliche Weise auch mit obigem Template aus der Seite (tl_page) herausholen.
Lesezeichen