TYPO3 中的适当流体模板

Proper Fluid Templating in TYPO3

我的问题专门涉及连接后端布局和内容元素以及如何将它们正确地集成到网站的主要内容区域中。这是我当前的设置:

TYPO3 7.4 使用 FLUID 模板引擎
安装了动态内容元素 (DCE) 扩展。

我已经将 header 和页脚等元素放入局部,并通过 FLUID 将它们加载到主模板中。我目前正试图弄清楚我应该如何为主要内容区域制作模板。它由一列组成,位于 header 和页脚之间,但应包含不同的元素配置。

例如,对于第一个块,我想要一个 header,然后是并排放置的一排 3 个盒子。在第二个块中,一个 header 后跟一行,其中可以显示任意数量的框,但一次只能显示四个(因此用户必须水平滚动才能看到其他框)。它应该看起来像这样:

http://i.stack.imgur.com/cGosd.png

第一次尝试解决方案: 我创建了 DCE 和一个包含两列的后端布局。每列用作图像中看到的两行的输入区域。然后,我修改了 Typoscript 模板以使用 colPos 访问这些列,并使用 styles.get.content 将它们保存在变量中。使用 FLUID,我可以在模板中实现它们并输出它们。

首先,我不知道这是否是后端布局的有效用法,但我感觉这不是它们的预期用途。这些栏不是真正的栏,只是一种使用 Typoscript 定位它们的方法,因此与页面结构无关。其次,这种方法似乎效率低下,因为如果我想向具有其他特征的页面添加另一行,则必须更改后端布局以适应这种情况。第三,其他页面可能有不同数量的这些行,这些行主要用于对元素进行分组。根据网站的复杂程度,这可能意味着很多背景布局。

综上所述,提出的问题是:

  1. 这个解决方案是否合适,如果不合适,TYPO3中的一组元素如何实现解释的目标?

您应该尝试扩展 "Gridelements"。版本 4 仅在 Github 上可用,但适用于 TYPO3 7.x。

我的建议:

  1. 使用一种只有 1 列的后端布局 "Main content"。
  2. 在 Gridelements 中定义您的网格,对于您的情况,您需要一个 3 列网格和一个 4 列网格。 (配置看手册)
  3. 在您的页面上和您的 DCE 的网格内插入网格。

我主要为 enabling/disabling 侧边栏或分隔上下内容区域使用不同的后端布局...