在我的TYPO3扩展中,我创建了一个自定义控制器类,可以从TYPO3后端的某个钩子调用。
在此控制器中,我想从$GLOBALS['TSFE']
获取一些内容,但当我var_dump($GLOBALS['TSFE'])
时,我会收到null
。问题是如何正确初始化$GLOBALS['TSFE'
]?
答案 0 :(得分:5)
尝试这样的事情:
$GLOBALS['TSFE'] = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController',$GLOBALS['TYPO3_CONF_VARS'], $id, $type);
答案 1 :(得分:2)
虽然$ GLOBALS ['TSFE']是TypoScriptFrontendController的实例化,并且您可以按照所述用makeInstance正确地实例化它,但是为什么要这么做呢?
正如您所说,您在后端中工作,TypoScriptFrontendController为您提供有关当前呈现页面的各种信息(在 Frontend 中)。
因此,当您可以实例化TSTypoScriptFrontendControllerFE时,通常不需要:TYPO3在前端中对其进行实例化。
在实例化它之前,我将首先检查:用例是什么?也许有更好的方法来做您想做的事。