Hallo!
Ich habe ein Verständnisproblem mit der Vererbung von Templates!
Aufgebaut habe ich die Struktur folgendermassen:
Root (Haupt- bzw. Default-Template)
--- Startseite (spezielles Template)
--- Main01
--- Main02
...
...
Dann habe ich in einem Systemfolder weitere Templates z.B.: für die Hauptnavigation usw.
Diese habe ich dann per "Basistemplate einschliessen" eingebunden.
Die Frage ist nun folgende:
Wenn ich im Objektbrowser browse, dann sehe ich, dass alle Dinge vom Hauptemplate in das spezielle Starttemplate übernommen werden - gut so, das will ich auch.
Was aber wenn ich ich im Startseite-Template eine Variable aus dem Haupttemplate überschreiben will, oder noch besser aus dem eingeschlossenen Basis-Template??
Wie arbeitet Typo3 diese Informationen alle ab bzw. wie sieht es mit der Reihenfolge aus?
Ein Beispiel:
# --- configuring the auto-parser plugin
plugin.tx_automaketemplate_pi1 {
# --- read the template file
content = FILE
content.file = uploads/tf/tmp_default.html
}
...
...
# --- main TEMPLATE cObject for the BODY
temp.mainTemplate = TEMPLATE
temp.mainTemplate {
# --- feeding the content from the auto-parser to the TEMPLATE cObject
template =< plugin.tx_automaketemplate_pi1
}
...
...
page = PAGE
page.typeNum = 0
page.stylesheet = uploads/tf/styles.css
# --- copying the content from TEMPLATE for <body>-section
page.10 < temp.mainTemplate
Jetzt sage ich im Startseite-Template Folgendes:
plugin.tx_automaketemplate_pi1.content.file = uploads/tf/tmp_start.html
Dies funktioniert perfekt, allerdings frage ich mich in welcher Reihenfolge die einzelnen Dinge eingebunden werden?!
Oder wie schaut's aus mit einem eingebundenen Basis-Template?
lib.HEADER = IMG_RESOURCE
lib.HEADER {
listNum = 0
file.import = uploads/media/
file.import.data = register:page_media
file.maxW = 900
file.maxH = 294
file.import.override {
required = 1
data = levelmedia: -1, "slide"
listNum = 0
}
stdWrap.wrap = <div id="imagepic" style="background-image:url( | );"><hr /></div>
}
Jetzt will ich für das Startseite-Template die wrap überschreiben:
lib.HEADER.stdWrap.wrap = <div id="imagepic_start" style="background-image:url( | );"><hr /></div>
Geht aber nicht, da ändert sich nichts an den wraps gegenüber dem Basis-Template!?
Wie kann ich es z.B.: erreichen, dass vor der Ausgabe der inkludierten Basis-Template Teile davon ersetzt werden?
DANKE
montharon