是否有解决方案只更改由typoscript选择的contentelement模板?
像这样:
lib.testelement = CONTENT
lib.testelement {
renderObj {
file = Path/to/my/template.html
}
table = tt_content
select {
pidInList = MyPid
where = uid=MyUid
max = 1
}
}
我需要来自控制器的指定变量。
答案 0 :(得分:0)
如果没有renderObj
,则默认渲染将用于所选记录
如果你想使用renderObj
,你必须定义完整的渲染。
这可以是默认渲染的副本
你有问题:渲染依赖于CType
(和list_type
)(所以你可能知道那个CE的CType
。)
所以它变得越来越复杂。
也许您可以使用其他解决方案:
如果您将FSC中的流体模板替换为您想要特别使用默认流体模板副本的那种CE
在该副本中插入条件<f:if condition="{data.pid} == Mypid">
,这样如果这种CE来自您的特殊页面,您可以进行另一次渲染。
答案 1 :(得分:0)
renderObj必须是官方cObject,所以这应该完成工作
lib.testelement = CONTENT
lib.testelement {
renderObj = FLUIDTEMPLATE
renderObj {
file = Path/to/my/template.html
}
table = tt_content
select {
pidInList = MyPid
where = uid=MyUid
max = 1
}
}
有关FLUIDTEMPLATE的其他参数
,请参阅https://docs.typo3.org/typo3cms/TyposcriptReference/ContentObjects/Fluidtemplate/Index.html要为集成商提供扩展渲染的选项而无需触及FLUIDTEMPLATE本身,您可以添加COA
lib.testelement = CONTENT
lib.testelement {
renderObj = COA
renderObj {
10 = FLUIDTEMPLATE
10.file = Path/to/my/template.html
}
table = tt_content
select {
pidInList = MyPid
where = uid=MyUid
max = 1
}
}