我(在admin中)创建了一个名为color
的选择字段。现在我无法访问它。当我运行{$note.data_map.color.content|attribute(show)}
时,它会打印value
。但如果没有attribute(show)
,我就无法访问它。我能做什么?
eZSelection的content
是一个数组,访问content
上的0
键以获取值。
{$node.data_map.email_option.content.0}
- 别忘了,您总是有attributeviewgui*,在这种情况下它可以帮您很多忙
- 您可以将属性设置为信息收集器,并从用户那里收集信息
*{attribute_view_gui attribute=$node.data_map.color}
您需要将class属性中定义的选项数组与所选选项的id进行匹配,才能获得其值。
$node.data_map.color.class_content.options
将包含所有可用选项(具有id
和name
值的关联数组)
$node.data_map.color.content
是一个数组,包含所选选项的id(因为此字段可以处理多次选择)。
即使不赞成使用{section}
函数,我也建议您查看呈现ezselection
属性的默认模板:design/standard/templates/content/datatype/view/ezselection.tpl
如果你有"多选"类型,你可以这样做:
{if $node.data_map.color.has_content}
{foreach $node.data_map.color.content as $colorID}
{foreach $node.data_map.color.class_content.options as $opt}
{cond($opt.id|eq($colorID), $opt.name, '')}
{/foreach}
{/foreach}
{/if}