Typo3 13.4.3中News扩展设置无法覆盖生效问题求助
TYPO3 13.4.3 News扩展设置无法覆盖的解决方案
问题根源
你判断的完全正确:站点包的常量配置被后续加载的News官方配置覆盖,导致自定义的plugin.tx_news.settings.displayDummyIfNoMedia = 0无法生效。TypoScript遵循「后加载配置覆盖先加载配置」的规则,当前News扩展的常量在站点包之后加载,直接冲掉了你的自定义设置。
解决步骤
1. 调整常量加载顺序
在站点main的常量配置集合中,将站点包的常量设置移到所有News相关配置之后,确保自定义配置最后加载:
[site:main] ESF Sitepackage site:main:sets set:georgringer/news:constants.typoscript set:georgringer/news-twb5:constants.typoscript set:bst3/esf-sitepackage:constants.typoscript Code segment EXT:ke_search/Configuration/TypoScript/constants.typoscript Code segment set:bst3/esf-sitepackage:TypoScript/constants.typoscript
2. 规范配置存放位置
注意:plugin.tx_news.settings.displayDummyIfNoMedia属于Setup TypoScript(运行时配置),不应放在常量文件中。
- 将该配置移到站点包的
TypoScript/page.typoscript或单独的ext.news.setup.typoscript文件中:plugin.tx_news { settings { displayDummyIfNoMedia = 0 } } - 确保
setup.typoscript正确引入该文件,现有引入规则无需修改:@import './TypoScript/*.typoscript' @import './TypoScript/Navigation/**.typoscript'
3. 验证配置生效
- 进入TYPO3后台「模板」模块,选择根模板后:
- 通过「常量编辑器」检查
plugin.tx_news.settings.displayDummyIfNoMedia的最终值; - 或使用「TypoScript对象浏览器(TSOB)」查看生效的Setup配置,确认自定义设置已被应用。
- 通过「常量编辑器」检查
4. 额外检查
- 排查是否存在页面级别的TypoScript配置,或其他扩展在更晚阶段覆盖该设置;
displayDummyIfNoMedia是News的全局设置,不属于twb5子配置,无需在plugin.tx_news.settings.twb5下重复配置。
内容的提问来源于stack exchange,提问作者BerndS
相关产品推荐
相关产品推荐

