Change record status: 
Project: 
Introduced in branch: 
8.5.x
Introduced in version: 
8.5.0
Description: 

API Changes

A new alter hook was added:

hook_field_ui_preconfigured_options_alter()

This hook allows modules to alter the result of \Drupal\Core\Field\PreconfiguredFieldUiOptionsInterface::getPreconfiguredOptions().

Examples of usage:

/**
 * Implements hook_field_ui_preconfigured_options_alter().
 */
function field_test_field_ui_preconfigured_options_alter(array &$options, $field_type) {
  if ($field_type === 'test_field_with_preconfigured_options') {
    $options['custom_options']['entity_view_display']['settings'] = [
      'test_formatter_setting_multiple' => 'altered dummy test string',
    ];
  }
}

Or also:

+/**
+ * Implements hook_field_ui_preconfigured_options_alter().
+ */
+function media_field_ui_preconfigured_options_alter(array &$options, $field_type) {
+  // Only act on entity_reference fields.
+  /** @var \Drupal\Core\Field\FieldTypePluginManager $field_type_manager */
+  $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
+  $class = $field_type_manager->getPluginClass($field_type);
+  if (!is_a($class, 'Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem', TRUE)) {
+    return;
+  }
+
+  // Set the default formatter for media in entity reference fields to be the
+  // "Rendered entity" formatter.
+  if (!empty($options['media'])) {
+    $options['media']['entity_view_display']['type'] = 'entity_reference_entity_view';
+  }
+}
Impacts: 
Module developers