123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- <?php
- use Drupal\Core\Entity\Entity\EntityFormDisplay;
- use Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem;
- use Drupal\field\Entity\FieldStorageConfig;
- use Drupal\field\Entity\FieldConfig;
- function field_post_update_save_custom_storage_property() {
- foreach (FieldStorageConfig::loadMultiple() as $field_storage_config) {
- $field_storage_config->save();
- }
- return t('All field storage configuration objects re-saved.');
- }
- function field_post_update_entity_reference_handler_setting() {
- foreach (FieldConfig::loadMultiple() as $field_config) {
- $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
- $item_class = 'Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem';
- $class = $field_type_manager->getPluginClass($field_config->getType());
- if ($class === $item_class || is_subclass_of($class, $item_class)) {
-
- $field_config->save();
- }
- }
- return t('Selection handler for entity reference fields have been adjusted.');
- }
- function field_post_update_email_widget_size_setting() {
- foreach (EntityFormDisplay::loadMultiple() as $entity_form_display) {
- $changed = FALSE;
- foreach ($entity_form_display->getComponents() as $name => $options) {
- if (isset($options['type']) && $options['type'] === 'email_default') {
- $options['settings']['size'] = '60';
- $entity_form_display->setComponent($name, $options);
- $changed = TRUE;
- }
- }
- if ($changed) {
- $entity_form_display->save();
- }
- }
- return t('The new size setting for email widgets has been added.');
- }
- function field_post_update_remove_handler_submit_setting() {
- $config = \Drupal::configFactory();
-
- $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
-
- foreach ($config->listAll('field.field.') as $field_id) {
- $field = $config->getEditable($field_id);
- $class = $field_type_manager->getPluginClass($field->get('field_type'));
-
- if ($class === EntityReferenceItem::class || is_subclass_of($class, EntityReferenceItem::class)) {
- if ($field->get('settings.handler_submit')) {
-
- $field->clear('settings.handler_submit')->save();
- }
- }
- }
- }
|