Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Search API HTML Element Filter 1.0.7 Minor update available for module search_api_html_element_filter (1.0.7). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). Varbase Media Header 9.2.1 Minor update available for module varbase_media_header (9.2.1). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

Extra Field Plus allows developers to create custom, display-only fields for entities with editable display settings. This module simplifies the process of adding custom data alongside entity content without hardcoding it into templates.

πŸ‡ΊπŸ‡¦

This module is maintained by at least one Ukrainian developer.
Please consider supporting Ukraine in a fight for their freedom and safety of Europe.

TL;DR

Extra Field Plus provides interfaces and plugin classes to create pseudo-fields (like extra_field) with editable display settings (addition by this module).
This is a developer module.

Problem solved

This module helps to create display-only 'extra_field' fields from plugins, including settings and settings summary, instead of using hook_entity_extra_field_info and reinventing the wheel again and again.

What is an extra_field (pseudo-fields)?

Pseudo-fields are basic display fields, which can be controlled from the display settings of a specific entity type (bundle). They are usually used, when you want to render data together with a particular entity type's data, but do not want to hard-code that data inside a template or preprocessor.

How to use

To provide your custom extra field plugin with display settings, you must at least implement the ExtraFieldPlusDisplayInterface.

But there are two base plugin classes which can help you with implementing your extra field settings plugin.
Just let your extra field settings plugin class extend either ExtraFieldPlusDisplayBase or ExtraFieldPlusDisplayFormattedBase.

All your extra field settings plugins have to be placed in your_custom_module/src/Plugin/ExtraField/Display folder.

Examples

For basic examples for extra field settings plugin classes, with simple and formatted outputs, checkout the extra_field_plus_example submodule.
You can find the examples here in the GitLab repository.

Dependencies

Versions

  • 3.x is the successor of 8.x-2.x with clean-ups, Layout Builder support and additional features like settings summary. New features go into this 3.x!
  • 8.x-2.x is the recommended and stable version. Bug fixes only, no new features. No layout builder support.

Alternatives

BC: Upgrading from 8.x-2.x to 3.x

When upgrading from 8.x-2.x to 3.x see the UPGRADE.md as breaking changes require you to upgrade your extra field plugins!

Activity

Total releases
1
First release
Apr 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 1
Maintenance
Dormant

Releases

Version Type Release date
3.0.0-beta5 Pre-release Apr 23, 2025