ViewMode.php in Drupal 10
File
core/modules/node/src/Plugin/migrate/source/d6/ViewMode.php
View source
<?php
namespace Drupal\node\Plugin\migrate\source\d6;
class ViewMode extends ViewModeBase {
protected function initializeIterator() {
$rows = [];
$result = $this
->prepareQuery()
->execute();
while ($field_row = $result
->fetchAssoc()) {
$field_row['display_settings'] = unserialize($field_row['display_settings']);
foreach ($this
->getViewModes() as $view_mode) {
if (isset($field_row['display_settings'][$view_mode]) && $field_row['display_settings'][$view_mode]['format'] != 'hidden' && empty($field_row['display_settings'][$view_mode]['exclude'])) {
if (!isset($rows[$view_mode])) {
$rows[$view_mode]['entity_type'] = 'node';
$rows[$view_mode]['view_mode'] = $view_mode;
}
}
}
}
return new \ArrayIterator($rows);
}
public function query() {
$query = $this
->select('content_node_field_instance', 'cnfi')
->fields('cnfi', [
'display_settings',
]);
return $query;
}
public function fields() {
return [
'display_settings' => $this
->t('Serialize data with display settings.'),
];
}
public function getIds() {
$ids['view_mode']['type'] = 'string';
return $ids;
}
}
Classes
Name |
Description |
ViewMode |
Drupal 6 view mode source from database. |