Habe das Problem gelöst, indem ich den Hook ausgetauscht habe (in der DCA) und die damit aufgerufene Klasse erweitert habe.
DCA:
PHP-Code:
$id_tmp = array_search(array('Isotope\Backend\Product\DcaManager', 'addOptionsFromAttribute'), $GLOBALS['TL_HOOKS']['getAttributesFromDca']);
if($id_tmp !== false)
$GLOBALS['TL_HOOKS']['getAttributesFromDca'][$id_tmp] = array('BackendDefaults', 'addOptionsFromAttribute');
Klasse Backend Defaults
PHP-Code:
class BackendDefaults extends \Isotope\Backend\Product\DcaManager {
public $arrData;
public function addOptionsFromAttribute($arrData, $objDca)
{
// Calls and execute the parent function.
$this->arrData = parent::addOptionsFromAttribute($arrData, $objDca);
// execute only when backend called. if $objDca is NULL, the frontend was called.
if ($objDca != NULL) {
# Hier kann man das Array $this->arrData['value'] beliebig verändern und Werte setzen
}
return $this->arrData;
}
Lesezeichen