function FieldInstancePerViewMode::initializeIterator

Overrides FieldInstance::initializeIterator

File

core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerViewMode.php, line 24

Class

FieldInstancePerViewMode
Drupal 7 field instance per view mode source class.

Namespace

Drupal\field\Plugin\migrate\source\d7

Code

protected function initializeIterator() {
  $instances = parent::initializeIterator();
  $rows = [];
  foreach ($instances->getArrayCopy() as $instance) {
    $data = unserialize($instance['data']);
    foreach ($data['display'] as $view_mode => $formatter) {
      $rows[] = array_merge($instance, [
        'view_mode' => $view_mode,
        'formatter' => $formatter,
      ]);
    }
  }
  return new \ArrayIterator($rows);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.