2016-11-24 7 views
0

フィード経由でコンテンツをインポートした後にノードフィールドを複製しようとしている状況があります。私はfeeds_tamper_string_2Idモジュールで挑戦しているので、これをやっています。私は、次のコードを試してみましたが、それは私がfield_tag_people['und']field_tags2['und']の値をコピーしたいフィードのインポート後にノードフィールドにデータを入力する

function members_entity_presave($entity, $type) 
{ 
    if($entity->type == 'members') { 
     foreach ($entity->field_tags2['und'] as $tags) { 
      array_push($entity->field_tags_people['und'], $tags); 
     } 
    } 
} 

動作しませんでした。

答えて

0

あなたのフィールドには、タクソノミーの参照である場合は、これを試すことができます。

function MYMODULENAME_entity_presave($entity, $type) 
{ 
    if($entity->type == 'members') { 
    $items = field_get_items($type, $entity, 'field_tags2'); 
    if(is_array($items)) { 
     foreach ($items as $tags) { 
     $entity->field_tags_people[LANGUAGE_NONE][]['tid'] = $tags['tid']; 
     } 
    } 
    } 
} 

EDIT

あなたはentity_metadata_wrapper使用することができます。https://www.drupal.org/docs/7/api/entity-api/entity-metadata-wrappers

+0

をフィールドに分類用語を参照する実体参照フィールドであります – mooru

+0

これは同じプロセスで、 'tid'インデックスを削除すると、entity_metadata_wrapper https://www.drupal.org/docs/7/api/entity-api/entity-metadata-wrappersを使用できます。 – Fky

関連する問題