我必须使用grid-elements制作后端和前端布局。为了澄清一点:我有10个容器,5x2
它在后端看起来像这样:
con 1_1 | con 2_1 | con 3_1 | con 4_1 | con 5_1
con 1_2 | con 2_2 | con 3_2 | con 4_2 | con 5_2
( con 代表容器)
可能有更聪明的方法来实现这一点,也许只是带有图像" - 内容元素的文本,但在这种情况下,这是要求。
现在有问题的部分。我需要以不同的方式包装每个容器。我的预期输出是这样的:
<div class="left w-clearfix">
<div class="organe_50_stapel_logo">
IMAGE // works
</div>
<div class="organe_50_stapel_text">
TEXT // works
</div>
</div>
(第2个 - 第4个容器将包裹在&#34;中间&#34;第5个容器包含在&#34;右侧)。
现在,对于我的设置,我将字段包裹起来(标记为//作品),但是,我已经卡住了包含在一起的某些字段。
这是我的设置:
21 < lib.gridelements.defaultGridSetup
21 {
columns {
11 < .default
11.wrap = <div class="organe_50_stapel_logo">|</div>
12 < .default
12.wrap = <div class="organe_50_stapel_logo">|</div>
13 < .default
13.wrap = <div class="organe_50_stapel_logo">|</div>
14 < .default
14.wrap = <div class="organe_50_stapel_logo">|</div>
15 < .default
15.wrap = <div class="organe_50_stapel_logo">|</div>
21 < .default
21.wrap = <div class="organe_50_stapel_text">|</div>
22 < .default
22.wrap = <div class="organe_50_stapel_text">|</div>
23 < .default
23.wrap = <div class="organe_50_stapel_text">|</div>
24 < .default
24.wrap = <div class="organe_50_stapel_text">|</div>
25 < .default
25.wrap = <div class="organe_50_stapel_text">|</div>
}
}
11 + 21属于容器&#34;左&#34; 容器中的12,13,14,22,23,24&#34;中&#34; 容器中的15,25&#34;右&#34;
答案 0 :(得分:3)
在这种情况下,您应该采用另一种方法,并删除列的各个包装,以支持使用所谓的&#34;虚拟字段的整体cObject&#34; Gridelements。
这些字段在渲染过程中填充内容,然后通过cObj->数据提供,因此可通过TypoScript字段,数据,insertData和dataWrap以及FLUIDTEMPLATE中的变量访问。
21 < lib.gridelements.defaultGridSetup
21 {
cObject = TEXT
cObject {
dataWrap (
<div class="left w-clearfix">
<div class="organe_50_stapel_logo">{field:tx_gridelements_view_column_11}</div>
<div class="organe_50_stapel_text">{field:tx_gridelements_view_column_21}</div>
</div>
<div class="middle">
<div class="organe_50_stapel_logo">{field:tx_gridelements_view_column_12}</div>
<div class="organe_50_stapel_text">{field:tx_gridelements_view_column_22}</div>
</div>
<div class="middle">
<div class="organe_50_stapel_logo">{field:tx_gridelements_view_column_13}</div>
<div class="organe_50_stapel_text">{field:tx_gridelements_view_column_23}</div>
</div>
<div class="middle">
<div class="organe_50_stapel_logo">{field:tx_gridelements_view_column_14}</div>
<div class="organe_50_stapel_text">{field:tx_gridelements_view_column_24}</div>
</div>
<div class="right">
<div class="organe_50_stapel_logo">{field:tx_gridelements_view_column_15}</div>
<div class="organe_50_stapel_text">{field:tx_gridelements_view_column_25}</div>
</div>
)
}
}
这适用于flexform_fieldname,parentgrid_fieldname,tx_gridelements_view_column_123和tx_gridelements_view_child_123。此外还有tx_gridelements_view_children和tx_gridelements_view_columns,但这些包含FLUIDTEMPLATE人员的数组,因为TypoScript无法处理数组。
字段被称为&#34;虚拟&#34;因为它们不存在于数据库中,但在渲染过程中将填充到cObj->数据中。除了将它们写回数据库之外,您仍可以使用真实字段对它们执行任何操作。
有关描述这些字段的TypoScript参考,请参阅https://docs.typo3.org/typo3cms/extensions/gridelements/Chapters/Typoscript/Reference/Index.html。
答案 1 :(得分:0)
通过使用typoscript进行渲染,我在gridelement中遇到了类似的错误。
我使用了您使用的精确TypoScript!
请在模板中添加此行&gt;最后设置
tt_content.gridelements_pi1.20 = COA
通过添加此行解决了我的问题,希望它能为您提供帮助!
EXT:gridelements 8.0.0-dev
谢谢:)