Блог экспериментатора инженера-разработчика: Infanty.
Я пишу how-to статьи на редкие темы или статьи обзоры - для себя и тех кто со мной работает.
Блог существует при поддержке: "Оккупационных сил Марса".

 foreach ($rows->items as $row) {
  // Проверяем существование группы у данного пользователя.
  $query = new EntityFieldQuery();
  $query->entityCondition('entity_type', 'vk_groups');
  $query->propertyCondition('type', 'vk_groups');
  $query->propertyCondition('uid', $user->uid);
  $query->fieldCondition('field_vk_groups_id', 'value', $row->id, '=');
  $result = $query->execute();
     
  // Если группа ещё не импортировалась на сайт, создаём её.
  if (!isset($result['vk_groups'])) {
    // Получаем расширение файла.
    $file_type = substr($row->photo_200, strrpos($row->photo_200, '.') + 1);       
    // Сохраняем файл (временно в корневую директорию файлов,
    // при прикреплении к сущности группы он перемещается согласно настройкам поля изображения).
    $file_path = file_save_data(file_get_contents($row->photo_200), 'public://vk-groups-' . $row->id . '.' . $file_type, FILE_EXISTS_REPLACE);

    // Создаём сущность группы с изображением группы.
    // Id сущности после сохранения можно получить с помошью следующего вызова: $entity->id.
    $entity = entity_create('vk_groups', array('type' =>'vk_groups'));
    $entity->uid   = $user->uid;
    $entity->title = $row->name;     
    $entity->field_vk_groups_id['und'][0]['value']          = $row->id;     
    $entity->field_vk_groups_screen_name['und'][0]['value'] = $row->screen_name;
    $entity->field_vk_groups_type['und'][0]['value']        = $row->type; 
    $entity->field_vk_groups_photo['und'][0]                = (array)$file_path;
    $entity->save();
  }
  else {
    // Если группа уже импортировалась на сайт,
    // то при необходимости обновляем её изображение.
    // Данный функционал в данном модуле пока не используется.
    if ($image_update) {
      // Получаем расширение файла.
      $file_type = substr($row->photo_200, strrpos($row->photo_200, '.') + 1);       
      // Сохраняем файл (временно в корневую директорию файлов,
      // при прикреплении к сущности группы он перемещается согласно настройкам поля изображения).
      //
      // Внимание: если уже имеется прикреплённый к сущности файл, то его сначала нужно удалить,
      // иначе возможна некорректная работа перемещения файла при прикреплении к сущности группы.
      $file_path = file_save_data(file_get_contents($row->photo_200), 'public://vk-groups-' . $row->id . '.' . $file_type, FILE_EXISTS_REPLACE);
     
      // Загружаем сущность группы.
      $wrapper = entity_metadata_wrapper('vk_groups', current(element_children($result['vk_groups'])));
      // Прикрепляем файл к сущности.
      $wrapper->field_vk_groups_photo->file->set($file_path);
      // Сохраняем сущность.
      $wrapper->save();
    }
  }
}