[Typo3-shop] Problem extending tt_products

Franz Holzinger franz at fholzinger.com
Thu Jan 26 15:48:11 CET 2006


Hello Simon,
>>
>>
> I think I have found the problem. By default the entire TCA is not
> loaded in the frontend:
> "Normally in the frontend only a part of the global $TCA array is
> loaded, for instance the "ctrl" part. Thus it doesn't take up too much
> memory."
> see: http://typo3.org/fileadmin/typo3api-3.8.0/d2/df2/classtslib__fe.html
> 
> So I've added the line
> tslib_fe::includeTCA();
> to main in class.tx_ttproducts_pi1.php
> 
> Now my additional fields are included in the front end!

thanks for this information.
However this has the drawback that all TCA will be loaded in frontend
and not only that of the tt_products tables.

The error comes from


/**
	* Loads the $TCA (Table Configuration Array) for the $table
	*
	* Requirements:
	* 1) must be configured table (the ctrl-section configured),
	* 2) columns must not be an array (which it is always if whole table
loaded), and
	* 3) there is a value for dynamicConfigFile (filename in typo3conf)
	* Usage: 84
	*
	* @param	string		Table name for which to load the full TCA array part
into the global $TCA
	* @return	void
	*/
function loadTCA($table)	{
	global $TCA,$LANG_GENERAL_LABELS;
	if (isset($TCA[$table]) && !is_array($TCA[$table]['columns']) &&
$TCA[$table]['ctrl']['dynamicConfigFile'])	{
		if
(!strcmp(substr($TCA[$table]['ctrl']['dynamicConfigFile'],0,6),'T3LIB:'))	{
		
include(PATH_t3lib.'stddb/'.substr($TCA[$table]['ctrl']['dynamicConfigFile'],6));
		} elseif
(t3lib_div::isAbsPath($TCA[$table]['ctrl']['dynamicConfigFile']) &&
@is_file($TCA[$table]['ctrl']['dynamicConfigFile']))	{	// Absolute path...
			include($TCA[$table]['ctrl']['dynamicConfigFile']);
		} else include(PATH_typo3conf.$TCA[$table]['ctrl']['dynamicConfigFile']);
	}
}


So probably the
$TCA['tt_products'] = Array (
...
'dynamicConfigFile' => PATH_BE_ttproducts.'tca.php',

causes that only the tca.php from EXT:tt_products will be loaded only.



There should be a better solution to this where still only the TCA for
the tt_products table will get loaded.



Franz







More information about the TYPO3-project-tt-products mailing list