Hallo,
Ich habe eine Seite, die vom Layoutaufbau ähnlich wie diese hier ist:
Headergrafik über gesamte Breite, darunter 3 Spalten (Menü | Content | News).
Nun soll die Headergrafik für jede Seite wählbar sein.
Bisher ist eine Grafik fest eingebunden (im Template fix definiert), es soll jetzt aber, je nach Thema der Seite, eine Grafik definiert werden können.
Wird keine Grafik definiert soll die Standardgrafik eingebunden werden.
Die Grafiken sind alle gleich groß.
System ist Typo3 4, TemplVoila.
Ich habe leider bisher keinen guten Ansatz, wie dies realisierbar wäre.
Um Ansätze, die mir auf die Sprünge helfen, wäre ich sehr dankbar.
Dirk
Ein toller Ansatz ist die Suche zu benutzen 😉
Mit dem Suchwort "Headergrafik" findest Du z.B. den folgenden Beitrag:
#588461
Gruß, Daniz
Hmm, der ist mir dann wohl untergegangen, gesucht hatte ich vorher schon mal...
Danke für die schnelle Hilfe, ich teste mal.
Dirk
Edit:
Hmm, also so bekomme ich es nicht zum laufen.
Der erwähnte Beitrag basiert ja auf einer Seite, die nicht mit TemplaVoila arbeitet.
Wenn ich jetzt einen Seitenbereich definiere, der für das Logo benutzt wird, z.B. ###HEADIMG###, so benötige ich doch auch noch einen Templatebereich (workOnSubpart)?
Wenn ich diesen ansetze, wie bei den Seiten, die ich ohne TemplaVoila konfiguriert habe, wird er jedoch komplett ignoriert.
Ich habe das jetzt wie folgt gemacht:
page.10 = TEMPLATE
page.10.template = FILE
page.10.template.file = fileadmin/template/template.html
page.10.workOnSubpart = HEADER
page.10 {
marks.HEADIMG = COA
marks.HEADIMG {
# HTML-Objekt
5 = HTML
5.value = style="background:url(
# Bild
10 = IMG_RESOURCE
10 {
file.maxH = 200
file.maxW = 760
file.import=uploads/media/
file.import.data = levelmedia: -1,slide
file.import.listNum = 0
file.import.override.field = media
}
# HTML-Objekt
15 = HTML
15.value = ) 50% no-repeat;"
}
}
Die TemplaVoila-Komponenten sind dann page.20, die sind auch sauber da, wie sie sein sollen.
Jemand eine Idee was ich falsch mache?
Danke.
Dirk
OK.
Hab eine Lösung gefunden.
In dem TemplaVoila DS habe ich ein neues Element "MainHeader" erzeugt.
Direkt im XML eingetragen, Menü als Vorlage benutzt.
<field_header type="array">
<tx_templavoila type="array">
<title>Main Header</title>
<description>Pick the HTML element in the template where you want to place the header graphic of the site.</description>
<eType>TypoScriptObject</eType>
<tags>table:inner,ul,div,tr,td</tags>
<eType_EXTRA type="array">
<objPath>lib.header</objPath>
</eType_EXTRA>
<TypoScriptObjPath>lib.header</TypoScriptObjPath>
</tx_templavoila>
</field_header>
Dies kann dann ganz normal über die Mappingfunktion einem Bereich des Templates zugeordnet werden.
Dazu muss dann, wie beim Menü, ein Mapping im TS erfolgen, hier sieht das dann bei mir so aus:
## Headergrafik
lib.header = COA
lib.header {
5 = HTML
5.value = <a href="http://mydomain.tld"><img alt="Seitenlogo" src="
10 = IMG_RESOURCE
10 {
file.import = fileadmin/templates/files/
file.import.data = levelmedia: -1, slide
file.import.listNum = 0
file.import.override.field = media
}
15 = HTML
15.value = " style="border:0;" /></a>
}
Vielleicht hilft es ja noch mal jemandem.
Dirk