class FieldInstanceSettings in Drupal 10
Same name in this branch
- 10 core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceSettings.php \Drupal\field\Plugin\migrate\process\d6\FieldInstanceSettings
- 10 core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php \Drupal\field\Plugin\migrate\process\d7\FieldInstanceSettings
Same name and namespace in other branches
- 8 core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php \Drupal\field\Plugin\migrate\process\d7\FieldInstanceSettings
- 9 core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php \Drupal\field\Plugin\migrate\process\d7\FieldInstanceSettings
Plugin annotation
@MigrateProcessPlugin(
id = "d7_field_instance_settings"
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\migrate\ProcessPluginBase implements MigrateProcessInterface
- class \Drupal\field\Plugin\migrate\process\d7\FieldInstanceSettings
- class \Drupal\migrate\ProcessPluginBase implements MigrateProcessInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of FieldInstanceSettings
File
- core/
modules/ field/ src/ Plugin/ migrate/ process/ d7/ FieldInstanceSettings.php, line 16
Namespace
Drupal\field\Plugin\migrate\process\d7View source
class FieldInstanceSettings extends ProcessPluginBase {
/**
* {@inheritdoc}
*/
public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
[
$instance_settings,
$widget_settings,
$field_definition,
] = $value;
$widget_type = $widget_settings['type'];
$field_data = unserialize($field_definition['data']);
// Get taxonomy term reference handler settings from allowed values.
if ($row
->getSourceProperty('type') == 'taxonomy_term_reference') {
$instance_settings['handler_settings']['sort'] = [
'field' => '_none',
];
$allowed_values = $row
->get('@allowed_values');
foreach ($allowed_values as $allowed_value) {
foreach ($allowed_value as $vocabulary) {
$instance_settings['handler_settings']['target_bundles'][$vocabulary] = $vocabulary;
}
}
}
// Get entityreference handler settings from source field configuration.
if ($row
->getSourceProperty('type') == "entityreference") {
$field_settings = $field_data['settings'];
$instance_settings['handler'] = 'default:' . $field_settings['target_type'];
// Transform the sort settings to D8 structure.
$sort = [
'field' => '_none',
'direction' => 'ASC',
];
if (!empty(array_filter($field_settings['handler_settings']['sort']))) {
if ($field_settings['handler_settings']['sort']['type'] == "property") {
$sort = [
'field' => $field_settings['handler_settings']['sort']['property'],
'direction' => $field_settings['handler_settings']['sort']['direction'],
];
}
elseif ($field_settings['handler_settings']['sort']['type'] == "field") {
$sort = [
'field' => $field_settings['handler_settings']['sort']['field'],
'direction' => $field_settings['handler_settings']['sort']['direction'],
];
}
}
if (empty($field_settings['handler_settings']['target_bundles'])) {
$field_settings['handler_settings']['target_bundles'] = NULL;
}
$field_settings['handler_settings']['sort'] = $sort;
$instance_settings['handler_settings'] = $field_settings['handler_settings'];
}
if ($row
->getSourceProperty('type') == 'node_reference') {
$instance_settings['handler'] = 'default:node';
$instance_settings['handler_settings'] = [
'sort' => [
'field' => '_none',
'direction' => 'ASC',
],
'target_bundles' => array_filter($field_data['settings']['referenceable_types'] ?? []),
];
}
if ($row
->getSourceProperty('type') == 'user_reference') {
$instance_settings['handler'] = 'default:user';
$instance_settings['handler_settings'] = [
'include_anonymous' => TRUE,
'filter' => [
'type' => '_none',
],
'sort' => [
'field' => '_none',
'direction' => 'ASC',
],
'auto_create' => FALSE,
];
if ($row
->hasSourceProperty('roles')) {
$instance_settings['handler_settings']['filter']['type'] = 'role';
foreach ($row
->get('roles') as $role) {
$instance_settings['handler_settings']['filter']['role'] = [
$role['name'] => $role['name'],
];
}
}
}
// Get the labels for the list_boolean type.
if ($row
->getSourceProperty('type') === 'list_boolean') {
if (isset($field_data['settings']['allowed_values'][1])) {
$instance_settings['on_label'] = $field_data['settings']['allowed_values'][1];
}
if (isset($field_data['settings']['allowed_values'][0])) {
$instance_settings['off_label'] = $field_data['settings']['allowed_values'][0];
}
}
switch ($widget_type) {
case 'image_image':
case 'image_miw':
$settings = $instance_settings;
$settings['default_image'] = [
'alt' => '',
'title' => '',
'width' => NULL,
'height' => NULL,
'uuid' => '',
];
break;
default:
$settings = $instance_settings;
}
return $settings;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DependencySerializationTrait:: |
protected | property | ||
DependencySerializationTrait:: |
protected | property | ||
DependencySerializationTrait:: |
public | function | 2 | |
DependencySerializationTrait:: |
public | function | 2 | |
FieldInstanceSettings:: |
public | function |
Performs the associated process. Overrides ProcessPluginBase:: |
|
MessengerTrait:: |
protected | property | The messenger. | 16 |
MessengerTrait:: |
public | function | Gets the messenger. | 16 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function | ||
PluginBase:: |
public | function | ||
PluginBase:: |
public | function | 1 | |
PluginBase:: |
public | function | ||
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
PluginBase:: |
public | function | Constructs a \Drupal\Component\Plugin\PluginBase object. | 44 |
ProcessPluginBase:: |
public | function |
Indicates whether the returned value requires multiple handling. Overrides MigrateProcessInterface:: |
3 |
StringTranslationTrait:: |
protected | property | The string translation service. | 3 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 1 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. |