Ich möchte im TS-Template eine Konstante anlegen:
plugin.tx_scripts {variablenname = Wert_der_Variable}
und dann den Wert im Task vom Scheduler auslesen:
class tx_scripts_Testscript1 extends tx_scheduler_Task {
public function execute() {
$Variable_in_php = Wert_der_Variable (aus TS);
echo $Variable_in_php;
Wie muss ich da vorgehen ?
Der Task (tx_scheduler_Task) bringt erst einmal von Haus aus nicht die Pluginkonfiguration mit. Diese musst Du laden:
require_once (PATH_t3lib.'class.t3lib_page.php');
require_once (PATH_t3lib.'class.t3lib_tstemplate.php');
require_once (PATH_t3lib.'class.t3lib_tsparser_ext.php');
function loadTs($pageUid) {
$sysPageObj = t3lib_div::makeInstance('t3lib_pageSelect');
$rootLine = $sysPageObj->getRootLine($pageUid);
$TSObj = t3lib_div::makeInstance('t3lib_tsparser_ext');
$TSObj->tt_track = 0;
$TSObj->init();
$TSObj->runThroughTemplates($rootLine);
$TSObj->generateConfig();
$this->conf = $TSObj->setup['plugin.']['tx_scripts.'];
}
Als $pageUid dann natürlich die Seite in welcher das Template liegt angeben. Mittels $this->conf['variablenname'] solltest Du dann auf die Konstante zugreifen können.
Grüße,
Carsten