Zum Inhalt springen

Contribution

Erstellt am 13. September 2007 · Noch keine Antworten

Tags: Frage

garbast ·

Da ich bei meinem letzten Problem eine wirklich hervorragende und Zeit sparende Lösung bekommen habe, möchte ich einen kleinen Teil veröffentlichen. Zwar kann/darf ich meine Extension nicht veröffentlichen, aber wenigstens einen in meinen Augen wichtigen Codeteil möchte ich teilen.

	function getContent($pid, $field) {
		$idList = $this->getContentIDs($pid, $field);
	
		$conf = array(
			'tables' => 'tt_content',
			'source' => $idList,
			'dontCheckPid' => 1
		);

		return $this->cObj->RECORDS($conf);
	}
	
	function getContentIDs($pid, $field) {
		$select_fields = 'tx_templavoila_flex';
		$from_table = 'pages';
		$where_clause = 'uid = '. $pid;

		$res = $GLOBALS['TYPO3_DB']->exec_SELECTquery($select_fields, $from_table, $where_clause, '', '', '');
		while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
			$flexform = t3lib_div::xml2array($row['tx_templavoila_flex']);
			$idList = $this->pi_getFFvalue($flexform, $field, 'sDEF');
		}

		return $idList;
	}

Ziel war es ja zu beginn meines Problems, Inhalte aus pages rendern zu können. Mit den beiden Funktionen ist es möglich die benötigten UIDs für tt_content aus Templatvoila Feldern auszulesen und im zweiten Step gerendert auszugeben.

Have Fun
Sebastian