Php 呈现单个FieldCollectionItemEntity字段
我需要渲染字段集合中的各个字段,以便根据特定条件调整字段顺序、字段内容、删除包装DOM节点等 我一直在通读,因为它似乎是这个问题上最好的资源,但我不明白为什么这个字段集合渲染器不工作 它什么也不输出Php 呈现单个FieldCollectionItemEntity字段,php,drupal-7,Php,Drupal 7,我需要渲染字段集合中的各个字段,以便根据特定条件调整字段顺序、字段内容、删除包装DOM节点等 我一直在通读,因为它似乎是这个问题上最好的资源,但我不明白为什么这个字段集合渲染器不工作 它什么也不输出 node——组件图标promo.tpl.php <? if (!empty($content['field_icon_promo_items'])) : ?> <div id="node-<?php print $node->nid; ?>" class="
node——组件图标promo.tpl.php
<? if (!empty($content['field_icon_promo_items'])) : ?>
<div id="node-<?php print $node->nid; ?>" class="<?php print $classes; ?> clearfix"<?php print $attributes; ?>>
<?php foreach ($content['field_icon_promo_items']['#items'] as $entity_uri): ?>
<?php
$item = entity_load('field_collection_item', $entity_uri);
?>
<?php foreach ($item as $item_object ): ?>
<?php print render($item_object->field_cta); ?>
<?php endforeach; ?>
<?php endforeach; ?>
</div>
<? endif; ?>
建议这样使用,使用实体\元数据\包装器:
<? if (!empty($content['field_icon_promo_items'])) : ?>
<div id="node-<?php print $node->nid; ?>" class="<?php print $classes; ?> clearfix"<?php print $attributes; ?>>
<?php foreach ($content['field_icon_promo_items']['#items'] as $entity_uri): ?>
<?php
$item = entity_load('field_collection_item', $entity_uri);
?>
<?php foreach ($item as $item_object ): ?>
<?php
$wrapper = entity_metadata_wrapper('field_collection_item', $item_object);
$field_cta = $wrapper->field_cta->value();
//render your values with your own html or using theme_link function
?>
<?php endforeach; ?>
<?php endforeach; ?>
</div>
<? endif; ?>
这段代码不像我需要的那样工作,但是元数据包装器将我推向了正确的方向!