我试图从分类学术语中获取各种领域的价值(我想以正确的方式做到这一点,即不是$term->field_foo['und'][0]['value']
)
我能够为节点可靠地执行此操作并调整我的分类术语方法,但它似乎不起作用。这是我的代码:
$field = field_get_items('taxonomy_term', $term, 'field_foo');
$value = field_view_value('taxonomy_term', $term, 'field_foo', $field[0]);
$rendered = render($value);
在对此进行故障排除时,我可以看到field_get_items正确返回一个数组...如果我在第一行之后插入一个var_dump($ field),我得到这个:
array (size=1)
0 =>
array (size=1)
'value' => string '1' (length=1)
然而,field_view_value返回一个空字符串...再次在第二行产生的var_dump($ value)之后:
array (size=2)
'#markup' => string '' (length=0)
'#access' => boolean true
谁能看到我出错的地方?
答案 0 :(得分:1)
您可以使用实体元数据包装器:
$term = entity_metadata_wrapper('taxonomy_term', TERM_ID);
更简单可靠。