回答:
ど!フィールドコレクションモジュールを確認する必要がありました。
entity_load('field_collection_item', array($item_id))
同じトリックを行うラッパー関数もあります。
field_collection_item_load($id, $reset = FALSE)
またはコメントごとに、次を使用します。
field_collection_item_load_multiple($ids = array(), $conditions = array(), $reset = FALSE)
複数のコレクションをロードする(たとえば、[ 追加]ボタンがある場合)。
field_collection_item_load_multiple($ids = array(), $conditions = array(), $reset = FALSE)
、を使用して複数のコレクションをロードすることもできます(たとえば、「追加」btnがある場合)。
正しいリビジョンをロードするには、field_collection_field_get_entity()を使用する必要があります。
使用例:
$node = node_load(1);
$items = field_get_items('node', $node, 'field_fc');
foreach ($items as $item) {
$fc = field_collection_field_get_entity($item);
// Do something.
}
Entity APIモジュールentity_metadata_wrapper
から使用できます:
$node_wrapper = entity_metadata_wrapper('node', $node);
$field_collection = $node_wrapper->field_rich_text_group[0]->value();
dpm($field_collection);
すべてのコレクションもループできます:
$node_wrapper = entity_metadata_wrapper('node', $node);
foreach ($node_wrapper->field_rich_text_group as $field_collection_wrapper) {
$field_collection = $field_collection_wrapper->value();
dpm($field_collection);
}