custom_field
Dynamic custom field types with extensive widget and formatter plugin support. A highly performant & scalable alternative to paragraphs and entity reference by storing data in a single table.
Community support
Have a support question or new feature you want to discuss? Join the Drupal #custom-field slack channel.
Features
- Multiple-value fields without entity references
- Inline field widgets using a customizable css-flexbox-based layout system
- Multiple field formatters: Default (custom theme hook), Inline, HTML List, Table, Custom Template (similar to views' field rewrite functionality)
- Clone field settings from ANY entity type
- Add/Remove columns to fields with existing data. See documentation
- Performance & scalability - Eliminates unnecessary field table bloat and configuration files
- Reduce overhead - May replace the need for additional contrib modules
Integrations
- AI (Artificial Intelligence)
- Default Content - (Patch required)
- Entity Browser
- Entity Usage
- Feeds
- Field Updater Service
- GraphQL Compose
- Linkit
- Search API
- Simple Add More
- Token Browser
Migrate to Custom fields
You can use the Field Updater Service module to map 1 or more fields in a configuration entity and use the provided service in an update hook from your custom module.
Included sub-modules
Module Description custom_field_ai AI (Artificial Intelligence) integration custom_field_entity_browser Entity Browser integration custom_field_graphql GraphQL compose integration custom_field_jsonapi JSON:API integration custom_field_linkit Linkit integration custom_field_media Provides a Media Library widget custom_field_search_api Enhances Search API integration custom_field_viewfield Provides the ability to reference and display viewsField types, widgets & formatters
- Overview of included field types, widgets & formatters
- Extending Custom Field widget plugins
- Extending Custom Field formatter plugins
Why this module?
In most cases, creating multiple single value field api fields in an entity form is overkill for storing simple field data that would be better to consolidate in a single table. One Custom Field can contain many columns in a single table which can lead to a substantial boost in performance by eliminating unnecessary joins and allowing for simpler configuration management.