diff --git a/mappers/field.inc b/mappers/field.inc index 43d62c4bd852918557373c8aeed9b28caaeb0cc4..7a5a4b3dfcb4190e47c97d8816efad496f303ed6 100644 --- a/mappers/field.inc +++ b/mappers/field.inc @@ -110,6 +110,9 @@ function _field_feeds_set_target($source, $entity, $target, $value, $input_forma $i = 0; $field = isset($entity->$target) ? $entity->$target : array(); foreach ($value as $v) { + if (is_object($v) && ($v instanceof FeedsElement)) { + $v = $v->getValue(); + } if (!is_array($v) && !is_object($v)) { $field['und'][$i]['value'] = $v; } diff --git a/mappers/link.inc b/mappers/link.inc index 029b795dd0de593392a26ccb6aa554f5f5c307a7..28aa59a7909427ca5897422851dfc6cae918f950 100644 --- a/mappers/link.inc +++ b/mappers/link.inc @@ -54,6 +54,9 @@ function link_feeds_set_target($source, $entity, $target, $value) { $info = field_info_field($target); list($field_name, $sub_field) = explode(':', $target); foreach ($value as $v) { + if (is_object($v) && ($v instanceof FeedsElement)) { + $v = $v->getValue(); + } if (!is_array($v) && !is_object($v)) { if (strstr($target, 'url')) { if (isset($entity->{$field_name}['und'][$i]['title'])) {