Hallo,

folgendes einfaches TypoScript:

http://pastebin.com/xFx9i71j

lib.debug = CONTENT
lib.debug {
    stdWrap.wrap = hit:|;
    table = pages
    select {
        uidInList = 63
        pidInList = 2,7
    }
    renderObj = COA
    renderObj {
        10 = TEXT
        10 {
            wrap = uid:|;
            field = uid
        }
    }
}

Vereinfacht gesagt möchte ich eigentlich nur einen Wert (nicht die UID, dies 
ist nur ein Bespiel) von einer bestimmten Seite auslesen. Die Zahlen 2 und 7 
stehen für die beiden Website-Rootseiten. Die Seite mit der UID 63 enthält eine 
Einstellung die ich auslesen möchte. Diese Seite ist eine Unterseite von der 
Seite mit der UID 2.

Ein Beispielbaum zur Verdeutlichung:
[2] Home
-> [12] Seite 1
-> [40] Seite 2
-> [63] Seite 3
-> -> [64] Kindseite 3.1
-> -> -> [65] Kindeskindseite 3.1.1
-> -> [66] Kindseite 3.2
-> -> -> [67] Kindeskindseite 3.2.1
[7] Home 2
-> ...


Rufe ich eine beliebige Seite (z.B.  UID 2, 12, 40, 7) auf wird nun folgendes 
richtig ausgegeben:
hit:uid:63;;

Rufe ich die Seite mit der UID 63 oder deren direkte Kindseiten (UID 64, 66) 
auf, bekomme ich beim selben Code nur folgendes ausgegeben:
hit:;

Wenn ich nun allerdings eine Kindseite der Kindseiten (UID 65) aufrufe kommt 
wieder:
hit:uid:63;;

Im TypoScript-Objekt-Browser bleibt die Library immer gleich.

Wenn ich sqlDebug wie folgt aktiviere...
$TYPO3_CONF_VARS['SYS']['devIPmask'] = '*';
$TYPO3_CONF_VARS['SYS']['sqlDebug'] = 2;

... erhalte ich in allen Fällen diese Ausgabe, welche richtig und 
nachvollziehbar ist:

lastBuiltQuery:
SELECT uid FROM pages WHERE uid IN (2,7) AND pages.deleted=0 AND 
pages.t3ver_state<=0 AND pages.pid<>-1 AND pages.hidden=0 AND 
pages.starttime<=1360664760 AND (pages.endtime=0 OR pages.endtime>1360664760) 
AND (pages.fe_group='' OR pages.fe_group IS NULL OR pages.fe_group='0' OR 
FIND_IN_SET('0',pages.fe_group) OR FIND_IN_SET('-1',pages.fe_group)) AND 
doktype NOT IN (255)

lastBuiltQuery:
SELECT * FROM pages WHERE pages.uid=63 AND pages.pid IN (2,7) AND 
pages.deleted=0 AND pages.hidden=0 AND pages.starttime<=1360664340 AND 
(pages.endtime=0 OR pages.endtime>1360664340) AND NOT pages.t3ver_state>0 AND 
pages.doktype<200 AND (pages.fe_group='' OR pages.fe_group IS NULL OR 
pages.fe_group='0' OR FIND_IN_SET('0',pages.fe_group) OR 
FIND_IN_SET('-1',pages.fe_group))

Wenn ich diese Queries in phpMyAdmin ausführe, erhalte ich auch die erwarteten 
Daten.


Nun bleibt irgendwie offen, warum es mal ausgelesen/dargestellt wird und mal 
nicht. Hat von Euch jemand schon mal etwas ähnliches gehabt?

Viele Grüße

David

PS: TYPO3 v4.6.15.
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an