问题描述
根
1level:事件
2level:事件A,事件B,事件C,......等等......
我想在页面 Events 中做的是使用 FLUIDTEMPLATE 呈现所有子页面的标题。
所以在我写的页面事件模板中
lib.EventContent = COA
lib.EventContent {
10 = COA
10{
table = pages
select {
orderBy = sorting
pidInList = this
}
}
}
在布局文件中
<f:for each="lib.EventContent" as="event" >
<p>event: {event.title}</p>
</f:for>
参数“each”注册为“array”类型,但在视图助手“TYPO3Fluid\Fluid\ViewHelpers\ForViewHelper”中属于“string”类型。
此外,我还尝试用 CONTENT 更改 COA,以所有可能的组合(COA-CONTENT / CONTENT-COA / CONTENT-CONTENT) 怎么了?是我做不到的吗?
谢谢大家
解决方法
TypoScript 应该看起来像这样:
lib.EventContent = CONTENT
lib.EventContent {
table = pages
select {
orderBy = sorting
pidInList = this
}
}
但是有一个更简单的解决方案。 TYPO3 已经带来了一个内容元素“Subpages”,它呈现一个选定页面的所有子页面的菜单:
{{3}}
这是通过 Fluid Styled Content 和 TypoScript 完成的。请检查此文件以获取详细信息:
typo3/sysext/fluid_styled_content/Configuration/TypoScript/ContentElement/MenuSubpages.typoscript
适合您的解决方案可能如下所示(未经测试):
lib.EventContent < tt_content.menu_subpages
lib.EventContent {
dataProcessing {
10 {
special >
}
}
}
查看 Fluid Styled Content 扩展中的所有 TypoScript 文件以获得更多灵感也是一个好主意。