class FieldOptionTranslation
Same name in this branch
- 11.x core/modules/field/src/Plugin/migrate/source/d6/FieldOptionTranslation.php \Drupal\field\Plugin\migrate\source\d6\FieldOptionTranslation
- 11.x core/modules/field/src/Plugin/migrate/source/d7/FieldOptionTranslation.php \Drupal\field\Plugin\migrate\source\d7\FieldOptionTranslation
- 11.x core/modules/field/src/Plugin/migrate/process/d6/FieldOptionTranslation.php \Drupal\field\Plugin\migrate\process\d6\FieldOptionTranslation
Determines the allowed values translation for select lists.
Attributes
Hierarchy
- class \Drupal\field\Plugin\migrate\process\d7\FieldOptionTranslation implements \Drupal\migrate\ProcessPluginBase
Expanded class hierarchy of FieldOptionTranslation
File
-
core/
modules/ field/ src/ Plugin/ migrate/ process/ d7/ FieldOptionTranslation.php, line 13
Namespace
Drupal\field\Plugin\migrate\process\d7View source
class FieldOptionTranslation extends ProcessPluginBase {
/**
* {@inheritdoc}
*
* Get the field default/mapped settings.
*/
public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
[$type, $data] = $value;
$data = unserialize($data);
$new_allowed_values = '';
$translation_key = $row->getSourceProperty('property');
if (isset($data['settings']['allowed_values'])) {
$allowed_values = $data['settings']['allowed_values'];
switch ($type) {
case 'list_string':
case 'list_integer':
case 'list_float':
case 'list_text':
if (isset($allowed_values[$translation_key])) {
$new_allowed_values = [
'label' => $row->getSourceProperty('translation'),
];
$translation_key = array_search($translation_key, array_keys($allowed_values));
break;
}
break;
default:
$new_allowed_values = $allowed_values;
}
}
return [
"settings.allowed_values.{$translation_key}",
$new_allowed_values,
];
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.