Typo3 11.5.19中News插件Template selector选项为空的求助
TYPO3 11.5.19 News插件模板布局选择器为空的解决方案
你的核心问题是混淆了Page TSConfig和TypoScript的作用范围:用来控制后台下拉选项的配置是Page TSConfig,而非TypoScript模板里的plugin.tx_news配置。以下是分步解决方法:
1. 配置Page TSConfig添加下拉选项
后台模板布局选择器的选项由tx_news.templateLayouts(注意没有plugin.前缀)控制,需写在Page TSConfig中:
tx_news.templateLayouts { 91 = TopNews2 92 = Related4 93 = Presse1 }
添加方式二选一:
- 快速测试:打开目标页面的「页面属性」→「资源」→「Page TSConfig」字段,直接粘贴上述代码
- 站点包持久化配置:在你的站点包目录下创建
Configuration/TsConfig/Page/news_template_layouts.tsconfig,写入上述代码,然后在站点包的ext_localconf.php中注册:\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig( '@import "EXT:你的站点包扩展名/Configuration/TsConfig/Page/news_template_layouts.tsconfig"' );
2. 用TypoScript关联自定义模板
配置好下拉选项后,需要在TypoScript中将布局值映射到你的自定义模板文件,确保渲染时能正确调用:
plugin.tx_news { # 优先加载站点包的模板/局部文件 view { templateRootPaths.10 = EXT:你的站点包扩展名/Resources/Private/Templates/News/ partialRootPaths.10 = EXT:你的站点包扩展名/Resources/Private/Partials/News/ layoutRootPaths.10 = EXT:你的站点包扩展名/Resources/Private/Layouts/News/ } settings { # 全局注册模板布局 templateLayouts { 91 = TopNews2 92 = Related4 93 = Presse1 } # 针对列表视图绑定模板(示例) list { templateLayouts { 91 = TopNews2 } } # 针对详情视图绑定模板(示例) detail { templateLayouts { 92 = Related4 } } } }
之后在站点包对应目录下创建模板文件,比如Resources/Private/Templates/News/List/TopNews2.html,放入你的自定义HTML代码。
3. 关键注意事项
- 清理缓存:每次修改配置后,必须点击后台顶部的「清空所有缓存」,否则新配置不会生效
- 站点包激活:确保你的站点包已经在扩展管理器中激活
- 路径正确性:检查站点包内的模板/局部文件路径是否与TypoScript配置一致,文件权限是否正常
内容的提问来源于stack exchange,提问作者chubert86
相关产品推荐
相关产品推荐

