1<?php 2 3/** 4 * @file 5 * Test module. 6 */ 7 8use Drupal\Core\Field\FieldDefinitionInterface; 9use Drupal\Core\Field\FormatterInterface; 10use Drupal\Core\Field\WidgetInterface; 11use Drupal\Core\Form\FormStateInterface; 12 13/** 14 * Implements hook_field_widget_third_party_settings_form(). 15 */ 16function field_third_party_test_field_widget_third_party_settings_form(WidgetInterface $plugin, FieldDefinitionInterface $field_definition, $form_mode, $form, FormStateInterface $form_state) { 17 $element['field_test_widget_third_party_settings_form'] = [ 18 '#type' => 'textfield', 19 '#title' => t('3rd party widget settings form'), 20 '#default_value' => $plugin->getThirdPartySetting('field_third_party_test', 'field_test_widget_third_party_settings_form'), 21 ]; 22 return $element; 23} 24 25/** 26 * Implements hook_field_widget_settings_summary_alter(). 27 */ 28function field_third_party_test_field_widget_settings_summary_alter(&$summary, $context) { 29 $summary[] = 'field_test_field_widget_settings_summary_alter'; 30 return $summary; 31} 32 33/** 34 * Implements hook_field_formatter_third_party_settings_form(). 35 */ 36function field_third_party_test_field_formatter_third_party_settings_form(FormatterInterface $plugin, FieldDefinitionInterface $field_definition, $view_mode, $form, FormStateInterface $form_state) { 37 $element['field_test_field_formatter_third_party_settings_form'] = [ 38 '#type' => 'textfield', 39 '#title' => t('3rd party formatter settings form'), 40 '#default_value' => $plugin->getThirdPartySetting('field_third_party_test', 'field_test_field_formatter_third_party_settings_form'), 41 ]; 42 return $element; 43} 44 45/** 46 * Implements hook_field_formatter_settings_summary_alter(). 47 */ 48function field_third_party_test_field_formatter_settings_summary_alter(&$summary, $context) { 49 $summary[] = 'field_test_field_formatter_settings_summary_alter'; 50 return $summary; 51} 52