TYPO3 - 在 8LTS 中加载扩展时在初始化时加载 css 文件? getPageRenderer() 已贬值
TYPO3 - Load css file on init when extensions gets loaded in 8LTS? getPageRenderer() is depreciated
我曾经在 7LTS 中像这样加载我的扩展时加载 css 文件:
/**
* Init
*
* @return void
*/
public function initializeAction() {
$GLOBALS['TSFE']->getPageRenderer()->addCssFile('typo3conf/ext/myextension/Resources/Public/Css/myextension.css');
}
在 8LTS 中出现错误:
未捕获的 TYPO3 异常
调用未定义的方法 TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController::getPageRenderer()
据说 getPageRenderer() 已贬值:
现在我的扩展加载时如何加载 css 文件?
我试过了,但没用:
/**
* Init
*
* @return void
*/
public function initializeAction() {
$pageRender = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRenderer::class);
$pageRender->addCssFile('typo3conf/ext/myextension/Resources/Public/Css/basic.css');
}
重复项 link 描述了另一种方式(通过模板)...但不是通过操作...所以在我看来没有重复项
PageRenderer 本身 未 已弃用,仅弃用方法 ->getPageRenderer()
,因为 PageRenderer 现在是单例。
所以你要做的是
$pageRenderer = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRenderer::class);
你很好。
我曾经在 7LTS 中像这样加载我的扩展时加载 css 文件:
/**
* Init
*
* @return void
*/
public function initializeAction() {
$GLOBALS['TSFE']->getPageRenderer()->addCssFile('typo3conf/ext/myextension/Resources/Public/Css/myextension.css');
}
在 8LTS 中出现错误:
未捕获的 TYPO3 异常 调用未定义的方法 TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController::getPageRenderer()
据说 getPageRenderer() 已贬值:
现在我的扩展加载时如何加载 css 文件?
我试过了,但没用:
/**
* Init
*
* @return void
*/
public function initializeAction() {
$pageRender = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRenderer::class);
$pageRender->addCssFile('typo3conf/ext/myextension/Resources/Public/Css/basic.css');
}
重复项 link 描述了另一种方式(通过模板)...但不是通过操作...所以在我看来没有重复项
PageRenderer 本身 未 已弃用,仅弃用方法 ->getPageRenderer()
,因为 PageRenderer 现在是单例。
所以你要做的是
$pageRenderer = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRenderer::class);
你很好。