TYPO3教程:如何覆盖bootstrap_package模板?
在TYPO3中用站点包覆盖Bootstrap Package模板
你的配置方向是对的,但存在细节问题,修正后即可正常实现模板覆盖:
1. 修正路径配置
推荐方案:模板放在站点包扩展内(便于版本控制与迁移)
假设你的站点包扩展名为site_package,修改配置如下:
plugin.tx_bootstrap_package { view { templateRootPaths { 0 = EXT:bootstrap_package/Resources/Private/Templates/ 1 = EXT:site_package/Resources/Private/Templates/BootstrapPackage/ } partialRootPaths { 0 = EXT:bootstrap_package/Resources/Private/Partials/ 1 = EXT:site_package/Resources/Private/Partials/BootstrapPackage/ } layoutRootPaths { 0 = EXT:bootstrap_package/Resources/Private/Layouts/ 1 = EXT:site_package/Resources/Private/Layouts/BootstrapPackage/ } } }
可选方案:模板放在fileadmin
如果坚持使用fileadmin存储模板,需保证路径写法统一(你的代码中partialRootPaths的路径缺少格式一致性,修正后如下):
plugin.tx_bootstrap_package { view { templateRootPaths { 0 = EXT:bootstrap_package/Resources/Private/Templates/ 1 = fileadmin/templates/ext/bootstrap_package/Templates/ } partialRootPaths { 0 = EXT:bootstrap_package/Resources/Private/Partials/ 1 = fileadmin/templates/ext/bootstrap_package/Partials/ } layoutRootPaths { 0 = EXT:bootstrap_package/Resources/Private/Layouts/ 1 = fileadmin/templates/ext/bootstrap_package/Layouts/ } } }
2. 模板文件匹配规则
- 必须完整复制Bootstrap Package原模板的目录结构到你的目标路径下。比如要覆盖
EXT:bootstrap_package/Resources/Private/Templates/Page/Default.html,就需要在你的站点包(或fileadmin对应目录)中创建相同层级的文件,再修改内容。 - 路径数组的数字越大优先级越高,因此
1号路径的模板会优先加载,覆盖0号的默认模板。
3. 生效必备操作
- 确认站点包已激活,且这段TypoScript已被添加到站点的模板配置中。
- 清空TYPO3的配置缓存和页面缓存,确保新配置生效。
内容的提问来源于stack exchange,提问作者Dmitriy
相关产品推荐
相关产品推荐

