如何在MASK扩展内容元素中调用站点包的Template Partials模板片段
问题原因
Fluid 默认只会在当前渲染上下文对应的扩展模板目录下查找Partial,你没有指定所属扩展时,只会在MASK模板对应的Resources/Private/Extensions/Mask/Frontend/Partials/路径下查找文件,所以会触发找不到文件的报错。
解决方案
方案1:渲染时指定Partial所属扩展(最便捷)
直接在f:render标签中添加extensionName参数,指定你的站点包扩展键的大驼峰格式即可。
比如你的站点包扩展键为my_sitepackage,则对应大驼峰格式为MySitepackage,调用代码如下:
<f:render partial="Test" extensionName="MySitepackage" />
注意:替换上述代码中的
MySitepackage为你自己的站点包扩展键的大驼峰写法
方案2:全局配置MASK的Partial搜索路径
如果你需要频繁调用站点包下的Partial,可以直接在站点的TypoScript配置中,把站点包的Partial路径加入MASK的视图搜索路径:
plugin.tx_mask.view { partialRootPaths { # 数值为优先级,可根据需求调整 20 = EXT:my_sitepackage/Resources/Private/Partials/ } }
配置生效后,你原来的<f:render partial="Test"/>代码就可以正常使用,无需额外加参数。
内容的提问来源于stack exchange,提问作者Michael
相关产品推荐
相关产品推荐

