我正在尝试将我的层叠样式表包含到我的TYPO3扩展中。我使用“kickstarter”创建了这个扩展。我尝试的方法如下:
$this->doc->getPageRenderer()->addCssFile(t3lib_extMgm::extRelPath('myExt') . 'res/css/my_stylesheet.css');
我在
main()
方法的末尾添加了那行代码。那么我做错了什么?包含文件的路径确实存在。谢谢。
如果您想在与您的模块不同的模块中包含CSS文件,而无需修改它,则可以使用$TBE_STYLES数组。
ext_tables.php:
// Custom CSS include
if (TYPO3_MODE=="BE") {
$TBE_STYLES['inDocStyles_TBEstyle'] .= '@import "/typo3conf/ext/your_ext/res/css/your.css";';
}
好的,我最终解决了这个问题。
将代码添加在“doc”对象实例化之后,一切都很正常。
$this->doc = t3lib_div::makeInstance('mediumDoc');
$this->doc->getPageRenderer()->addCssFile(t3lib_extMgm::extRelPath('myExt') . 'res/css/my_stylesheet.css');
$GLOBALS['TBE_STYLES']['skins'][$_EXTKEY]['name'] = $_EXTKEY;
$GLOBALS['TBE_STYLES']['skins'][$_EXTKEY]['stylesheetDirectories']['css'] = 'EXT:'.$_EXTKEY.'/stylesheets/visual/';
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath()
来解决问题,这样就不需要依赖实例在域的“根”上。 - pdu