Field Widget API in Drupal 8
Same name and namespace in other branches
- 7 modules/field/field.api.php \field_widget
- 9 core/modules/field/field.api.php \field_widget
Define Field API widget types.
Field API widgets specify how fields are displayed in edit forms. Fields of a given field type may be edited using more than one widget. In this case, the Field UI module allows the site builder to choose which widget to use.
Widgets are Plugins managed by the \Drupal\Core\Field\WidgetPluginManager class. A widget is a plugin annotated with class \Drupal\Core\Field\Annotation\FieldWidget that implements \Drupal\Core\Field\WidgetInterface (in most cases, by subclassing \Drupal\Core\Field\WidgetBase). Widget plugins need to be in the namespace \Drupal\{your_module}\Plugin\Field\FieldWidget.
Widgets are Form API elements with additional processing capabilities. The methods of the WidgetInterface object are typically called by respective methods in the \Drupal\Core\Entity\Entity\EntityFormDisplay class.
See also
Parent topics
File
- core/
modules/ field/ field.api.php, line 123 - Field API documentation.
Functions
Name | Location | Description |
---|---|---|
hook_field_widget_form_alter |
core/ |
Alter forms for field widgets provided by other modules. |
hook_field_widget_info_alter |
core/ |
Perform alterations on Field API widget types. |
hook_field_widget_multivalue_form_alter |
core/ |
Alter forms for multi-value field widgets provided by other modules. |
hook_field_widget_multivalue_WIDGET_TYPE_form_alter |
core/ |
Alter multi-value widget forms for a widget provided by another module. |
hook_field_widget_WIDGET_TYPE_form_alter |
core/ |
Alter widget forms for a specific widget provided by another module. |
Classes
Name | Location | Description |
---|---|---|
FieldWidget |
core/ |
Defines a FieldWidget annotation object. |
WidgetBase |
core/ |
Base class for 'Field widget' plugin implementations. |
WidgetPluginManager |
core/ |
Plugin type manager for field widgets. |
Interfaces
Name | Location | Description |
---|---|---|
WidgetInterface |
core/ |
Interface definition for field widget plugins. |