我有一个在TypoScript中定义的对象
page.10 {
variables {
myObject = COA
myObject{
1 = TEXT
1.value = yome Text
2 = TEXT
2.value = 42
}
}
}
我需要部分
中myObject的数据<f:render partial="myPartial" arguments="{content:myObject}" />
看起来像
<section id="myPartial">
<h2>{content.1}</h2>
<p>{content.2}</p>
</section>
虽然内容在那里(因为{content}会显示所有属性)我无法访问它,而h2和p将为空...
如何使用myObject的内容填充h2和p?
答案 0 :(得分:0)
这是不可能的。 TypoScript
目前只返回文本字符串,而不是数组。因此,变量myObject
包含COA
的整个连接字符串,因此yome Text42
。
请注意,COA
表示Content Object Array
,但整个COA
是一个单个对象,以一个字符串形式返回。
答案 1 :(得分:0)
替代方法:使用VHS
扩展程序的v:var.typoscript
ViewHelper:
{namespace v=Tx_Vhs_ViewHelpers} {v:var.typoscript(path: 'page.10.variables.myObject') -> v:var.set(name: 'myObject')}
之后您可以在模板中访问{myObject.1}
等。请注意,v:var.set
的所谓“链式”用法是可选,,但可以使用中间模板变量更轻松地访问变量,而不是使用更昂贵的调用来检索该值完全在多个位置。另一种方式:
{v:var.typoscript(path: 'page.10.variables.myObject.1')} {v:var.typoscript(path: 'page.10.variables.myObject.2')} etc.