[TYPO3-german] TypoScript Object CONTENT liest Inhalt nur sporadisch aus

David Gurk dgurk at medienwerft.de
Tue Feb 12 11:49:41 CET 2013


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.


More information about the TYPO3-german mailing list