1

我主要是一名 UI 和图形设计师,尽管我对 Typo3 有一些经验,但我完全陷入了以下问题:

我有一个大页面树,其中包含目录中的项目的单页(每页一个项目),这些项目的布局是使用 Armin Vieweg 漂亮的“动态内容元素”扩展 (DCE)构建的。

现在我想创建一个概览页面,在其中自动引用其中一些项目 - 理想情况下,我想在我想在那里显示的每个元素中选中一个框(我会在项目 DCE 中添加一个字段catalogueItemPreview,作者可以检查或取消选中) .

不幸的是,我对数据库的结构以及如何构建查询没有具体的想法(我什至会在哪里做呢?在定制的插件中?)。

这就是我想象它可以工作的方式:在概述页面上,我在内容元素中使用了一个插件/扩展,它执行以下操作:

  1. 在 Typo3 DB 中搜索具有名为“catalogueItemPreview”的字段的内容元素

  2. 返回字段“ catalogueItemTitle ”、“ catalogueItemShortDescription ”、“ cataloguePreviewImage

  3. 使用模板在概览页面上呈现所有这些元素的预览

我很高兴有任何指向解决方案的指针,因为目前我完全不知道从哪里开始......

Typo3 后端的示意图截图

4

1 回答 1

0

感谢您使用我的 DCE 扩展 :)

好吧,您在内容元素中定义的字段和它们的值都存储为 XML,因为当前版本的 DCE 是基于 Flexforms。

这使得使用 WHERE 子句中的字段属性之一执行 MySQL 查询变得非常困难。您可以检查字段中的 xml 字符串,pi_flexform但不建议这样做。

相反,我会使用内容元素的另一个属性 (tt_content) 将项目标记为“在首页上显示”。例如,您可以为此创建一个新值layoutsection_frame值。然后很容易使用 TypoScript 输出您想要的元素。

于 2014-07-26T02:10:32.093 回答