[TYPO3-german] [Gelöst] Element-Gruppen wrappen in eigenem Content mit TS
Tom Arnold
t3list at bnt.de
Sun Mar 27 13:45:59 CEST 2011
Hallo,
ich habe die Lösung nun selbt gefunden - CASE und stdWrap.outerWrap ist
mein Freund! :-)
So werden jeweils vier Elemente in ein DIV zusammengewrappt:
temp.gruppen = CONTENT
temp.gruppen {
(selectkrams...)
renderObj = COA
renderObj {
stdWrap.dataWrap =
<div class="item-{cObj:parentRecordNumber}">|</div>
stdWrap.outerWrap.cObject = COA
stdWrap.outerWrap.cObject {
10 = CASE
10.key.cObject = TEXT
10.key.cObject.data = cObj:parentRecordNumber
# 2, Berechnung per Modulo
10.key.cObject.wrap = |%4
10.key.prioriCalc = intval
# default: nix wrappen
10.default = TEXT
10.default.value = |
# erstes element: groupwrap oeffnen:
10.1 = TEXT
10.1.value = <div class="group">|
# modulo = 0: groupwrap schliessen:
10.0 = TEXT
10.0.value = |<!-- .group --></div>
}
10 = TEXT
10.value = (Hier der Inhalt)
}
}
Jippieh. Man kann nun bei der Modulo auch andere Gruppenzahlen angeben,
entsprechend viele Elemente kommen dann in das Group-div.
Viele Grüsse
Tom
Am 27.03.11 11:00, schrieb Tom Arnold:
> Hallo,
>
> ich bin ein wenig weitergekommen, ich bekomme nun bei jedem vierten
> Element die erwartete "0" ausgegeben.
>
> Die Rahmenbedingungen sind nun alle da, jetzt fehlt mir nur noch die
> Überprüfung und der "Gruppen-Wrap", da stehe ich auf dem Schlauch.
>
> temp.gruppen = CONTENT
> temp.gruppen {
> (selectkrams...)
> cObj = COA
> cObj {
> 1 = TEXT
> 1 {
> current = 1
> setCurrent.data = cObj:parentRecordNumber
> setCurrent.wrap = |%4
> prioriCalc = 1
> # Ausgabe: 1,2,3,0,1,2,3,0,1,2 usw
> }
>
> # so wird nur jedes vierte Element ausgegeben:
> # stdWrap.if.isTrue.value < .1
> # stdWrap.if.isTrue.equals = 0
>
> stdWrap.dataWrap = <div class="item-{cObj:parentRecordNumber}">|</div>
> 10 = TEXT
> 10.value = (Hier der Inhalt)
> }
> }
>
> Ich müsste ja jetzt irgenwie diese Überprüfung innerhalb des cObj eine
> Ebene höher bekommen, da mein gewünschter "Gruppen-Wrap" ja nicht
> innerhalb des jeweiligen cObj liegen darf, sondern um mehrere cObj
> drumherum. Das muss doch irgendwie gehen?
>
> Viele Grüsse
> Tom
>
>
> Am 25.03.11 17:33, schrieb Tom Arnold:
>> Hi,
>>
>> ich baue mir mit TS ein eigenes Content-Objekt. Wie kann ich
>> erreichen, dass ich nicht per
>>
>> cObj.stdWrap.wrap =<div class="item"> |</div>
>>
>> um jedes Element meinen wrap habe, sondern immer vier Objekte zusammen
>> in einem div?
>>
>> Die "Loop" Zahl steht ja in {cObj:parentRecordNumber}, mit
>>
>> cObj.stdWrap.dataWrap =<div class="item n-{cObj:parentRecordNumber}">
>> |</div>
>>
>> erhalte ich in der Ausgabe entsprechend<div class="item n-1"> ,<div
>> class="item n-2"> usw.
>>
>> Mit einem Modulo {cObj:parentRecordNumber}%4 müsste ich also "merken",
>> wenn das jeweils vierte Element ausgegeben wird, allerdings ist mir
>> völlig unklar, wie ich
>>
>> a) Diese Überprüfung in TS schreibe und
>> b) dann in Abhängigkeit davon den stdWrap.wrap so mache, dass
>> Vierer-Gruppen entstehen…?
>>
>> Viele Dank für Hilfe…
>> Tom
>>
>>
>
More information about the TYPO3-german
mailing list