You are here

function entityreference_feeds_feeds_processor_targets_alter in Entity reference feeds 7

Implements hook_feeds_processor_targets_alter().

See also

FeedsNodeProcessor::getMappingTargets()

File

./entityreference_feeds.module, line 114
This is the main module file for entity reference feeds.

Code

function entityreference_feeds_feeds_processor_targets_alter(&$targets, $entity_type, $bundle_name) {

  // Prevent infinite function call cycle.
  if (isset($targets['entityreference_feeds_processed'])) {
    unset($targets['entityreference_feeds_processed']);
    return;
  }
  foreach (field_info_instances($entity_type, $bundle_name) as $field_name => $field_instance) {
    $info = field_info_field($field_name);
    if ($info['type'] == 'entityreference') {
      $target_type = $info['settings']['target_type'];
      $target_bundles = $info['settings']['handler_settings']['target_bundles'];
      foreach ($target_bundles as $target_bundle) {
        $targets += _entityreference_feeds_get_targets($field_name, $target_type, $target_bundle);
      }
    }
  }
}