[TYPO3-german] Content von Unterseiten ausgeben
JoH
info at cybercraft.de
Tue Feb 21 18:08:24 CET 2006
>> Vielen Dank nochmal für die Hilfe, aber leider liefert mir das
>> Snippet immer noch keine Infos :(
>>
>> ---< snip >---
>>
>> temp.subcontent = CONTENT
>> temp.subcontent {
>> table = tt_content
>> select {
>> join = pages on (tt_content.pid=pages.uid)
>> where = pages.pid=24 AND tt_content.colPos=0
>> orderBy = pages.sorting,tt_content.sorting
> pidInList>
>> }
>> }
>>
>> ---< snip >---
> [...]
> pidInList gelöscht?
genau das geht eben nicht ;-)
pidInList muß entweder direkt oder über stdWrap gesetzt werden, oder es wird
"this" genommen.
Und exakt das ist der Grund, warum alle bisherigen Ansätze nicht
funktionieren.
Die Nummern mit JOIN & Co. beziehen sich also ausschließlich auf Datensätze,
die sich auf einer der in pidInList angegebenen Seiten befinden.
JOIN wird in diesem Fall aber eigentlich gar nicht benötigt.
Das Ganze kann daher in TypoScript nur in einer Zweischritt-Lösung gehen.
pidInList bekommt eine Liste von Seiten, deren Inhalt dann ausgegeben wird.
Das funzt über ein LOAD_REGISTER, das als renderObj in ein CONTENT Element
gepackt wird.
Das CONTENT Element gibt seinerseits also nicht wirklich etwas aus, sondern
füllt lediglich das Register mit einer kommaseparierten Liste.
Die sorgt wiederum im pidInList des zweiten CONTENT Elements dafür, daß nur
Inhalte aus diesen Seiten gerendert werden.
temp.subcontent = COA
temp.subcontent {
10 = CONTENT
10 {
table = pages
renderObj = COA
renderObj {
10 = COA
10 {
if.isFalse.data = register:pageList
10 = LOAD_REGISTER
10 {
pageList.field = uid
}
}
20 = COA
20 {
if.isTrue.data = register:pageList
10 = LOAD_REGISTER
10 {
pageList.dataWrap = {register:pageList},{field:uid}
}
}
}
}
20 = CONTENT
20 {
table = tt_content
select {
pidInList.data = register:pageList
orderBy = pid DESC,sorting
}
}
}
Soeben getestet und für gut befunden.
Übrigens: Solche und ähnliche Ansätze gibt's in Kürze im Kochbuch ;-)
Joey
--
Wenn man keine Ahnung hat: Einfach mal Fresse halten!
(If you have no clues: simply shut your knob sometimes!)
Dieter Nuhr, German comedian
openBC: http://www.cybercraft.de
More information about the TYPO3-german
mailing list