Um das ganze mal aufzuklären bzw. zu klären, warum welche Lösung klappt oder nicht klappt, habe ich mal in die Tiefen von TYPO3 geschaut.
Hier im Thread wurde ja bereits festgestellt, dass manches TS erst seit TYPO3 4.3 nicht mehr läuft. Somit stellt sich die Frage, warum?
Vergleich des TS in 4.2 vs. 4.3
css_styled_content in TYPO3 4.2 (Ausschnitt):
tt_content.stdWrap {
innerWrap.cObject = CASE
innerWrap.cObject {
key.field = section_frame
1 = TEXT
1.value = <div class="csc-frame csc-frame-invisible">|</div>
5 = TEXT
5.value = <div class="csc-frame csc-frame-rulerBefore"></div>|
# ...
}
}
css_styled_content in TYPO3 4.3 (Ausschnitt):
tt_content.stdWrap {
innerWrap.cObject = CASE
innerWrap.cObject {
key.field = section_frame
default = COA
default {
10 = TEXT
10 {
value = <div id="c{field:uid}"
override.cObject = TEXT
override.cObject {
value = <div
if.value = div
if.equals.field = CType
}
insertData = 1
}
15 = TEXT
15 {
value = csc-default
noTrimWrap = | class="|" |
required = 1
}
20 = COA
20 {
10 = COA
10 {
10 = TEXT
10 {
value = {$content.spaceBefore}
wrap = |+
if.isTrue = {$content.spaceBefore}
}
20 = TEXT
20 {
field = spaceBefore
}
stdWrap {
prioriCalc = intval
wrap = margin-top:|px;
required = 1
ifEmpty.value =
}
}
20 = COA
20 {
10 = TEXT
10 {
value = {$content.spaceAfter}
wrap = |+
if.isTrue = {$content.spaceAfter}
}
20 = TEXT
20 {
field = spaceAfter
}
stdWrap {
prioriCalc = intval
wrap = margin-bottom:|px;
required = 1
ifEmpty.value =
}
}
stdWrap.noTrimWrap = | style="|" |
stdWrap.required = 1
}
30 = TEXT
30.value = >|</div>
}
1 =< tt_content.stdWrap.innerWrap.cObject.default
1.15.value = csc-frame csc-frame-invisible
5 =< tt_content.stdWrap.innerWrap.cObject.default
5.15.value = csc-frame csc-frame-rulerBefore
# ...
}
}
Was ist nun die Änderung, die Euch in die Quere kommt?
In TYPO3 4.2 waren die cObjects einfache TEXT-Objekte. Diesen konnte man problemlos einen neuen Value zuweisen und alles hat gepasst.
In TYPO3 4.3 ist das cObject nun kein TEXT-Objekt mehr, sondern ein COA-Objekt. Dieses wird für den default-Fall definiert und in allen weiteren Fällen referenziert (=<). COA-Objekte haben keine value-Eigenschaft, wodurch eine Änderungen wie von Büchel keine Auswirkung hat, weil sie einfach ignoriert wird.
Möglich wäre nun, dass man das definierte cObject erst einmal löscht (damit aber auch die spaceBefore/spaceAfter-Behandlung usw.), und dann im Anschluss wieder wie früher ein TEXT-Objekt direkt definiert (Zeile 1+2, 5+6):
tt_content.stdWrap.innerWrap.cObject.1 >
tt_content.stdWrap.innerWrap.cObject.1 = TEXT
tt_content.stdWrap.innerWrap.cObject.1.value = <div class="subcontent-unit-Box"><div class="round-border-Box"></div><div class="round-border-Box"></div> | </div>
tt_content.stdWrap.innerWrap.cObject.5 >
tt_content.stdWrap.innerWrap.cObject.5 = TEXT
tt_content.stdWrap.innerWrap.cObject.5.value = <div class="subcontent-unit-border-wichtig"><div class="round-border-wichtig"></div><div class="round-border-wichtig"></div> | </div>
Ich hoffe, dass ich etwas mehr Klarheit in das Verhalten von TYPO3 bringen konnte.
Viele Grüße
Julian