Was für Werte sollen in das Select eigentlich rein? Im Prinzip sollte es aber wie folgt funktionieren:
Du erstellst dir deine eigene "mini-Extension", in der config.php registrierst du den Hook:
PHP-Code:
$GLOBALS['TL_HOOKS']['loadFormField'][] = array('myClass', 'changeSelect');
In deiner Klasse kannst du dann einfach die Werte des Widgets überschreiben:
PHP-Code:
public function changeSelect($objWidget, $formId, $arrData, $form)
{
//diesen Tiel nur im Formular mit ID 1 für alle Select-Elements ausführen
if ($formId == 1 || $objWidget->type == 'select') {
//Array mit neuen Werten erstellen, für jeden Eintrag eine Kombimation aus Value und Label
$arrOptions = array(
array(
'value' => 'value1',
'label' => 'label1'
),
array(
'value' => 'value2',
'label' => 'label2'
),
);
$objWidget->__set('options', serialize($arrOptions));
}
return $objWidget;
}
Die Autoload.php kanst du dir einfach übers Backend erstellen lassen. Das Beispiel ist ungetestet und natürlich etwas sinnfrei, da die Werte hier fest sind, das könnte man also auch einfach im Backend eintragen. Aber vom Prinzip her kann man so die werte per Hook ändern/anpassen. Auch werden in diesem Beispiel ALLE Select-felder im Formular mit ID = 1 geändert, hier müsste natürlich eine etwas andere Abfrage hin
Lesezeichen