eZPublish - 如何获得选择值?

时间:2014-09-10 09:02:29

标签: ezpublish

我在(在管理员中)创建了一个名为color的选择字段。现在我无法访问它。当我运行{$note.data_map.color.content|attribute(show)}时,它会打印value。但是如果没有attribute(show),我就无法访问它。我该怎么办?

4 个答案:

答案 0 :(得分:1)

  1. 不要忘记你总是拥有attribute_view_gui *,在这些情况下可以帮到你很多。
  2. 您可以将该属性设置为信息收集器并从用户收集该信息。
  3. * {attribute_view_gui attribute = $ node.data_map.color}

答案 1 :(得分:1)

eZSelection content是一个数组,访问0上的content键以获取值。

{$node.data_map.email_option.content.0}

答案 2 :(得分:0)

您需要将class属性中定义的选项数组与所选选项的id匹配,以获取其值。

$node.data_map.color.class_content.options将包含所有可用选项(带有idname值的关联数组)

$node.data_map.color.content是一个包含所选选项的ID的数组(因为此字段可以处理多个选择)。

即使{section}函数已弃用,我也建议您查看呈现ezselection属性的默认模板:design/standard/templates/content/datatype/view/ezselection.tpl

答案 3 :(得分:0)

如果你有"多项选择"类型比你可以这样做:

{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}