This is basically the same as https://www.drupal.org/project/ideas/issues/607396 (and related to the older https://www.drupal.org/project/ideas/issues/501366)
Problem/Motivation In most Drupal projects, the need comes up for a collection of fields. This is normally achieved with a light-weight entity such as Paragraphs or Field collection.
In Drupal 8 the go to solution for this is the Paragraphs module, which over time was also expanded to control content-type display, so that content editors could effectively control layouts with it.
Now Drupal core has a stable layout builder, the need to use it for layouts is no more, but there is still a need to use it for compound fields. This however doesn't integrate as well with layout builder, because there is a disconnect between content-editing and layout building.
In addition, in core we have a use case for such a compound field in the ingredients field on the Umami recipe content type. At present it is implemented as a text-field, which prevents us from using Drupal's modelling tools to build powerful features such as a view listing 'all recipes featuring chocolate'. This is because the ingredients field is used to list three distinct items. E.g.
1 cup of flour
When really this should be three fields
1 (quantity) cup (unit) of flour (ingredient)
If we had a way to build compound fields from the UI in core, we could construct a new field-type for the ingredients list comprising the following sub-fields
- Quantity - number
- Unit - text-list or taxonomy term
- Ingredient - taxonomy term
This would unlock Drupal's relationship modelling power.
Proposed resolution Add a compound field type to core with a proposed target of being an experimental module in Drupal 9.1
The field will provide a UI to allow site-builders to build new field-types by combining existing field types.
All other functionality should continue to work.
- Views support
- formatter support
- widget support
- data storage and retrieval
- serializer support (JSON API etc)
- translation support
- revision support
Remaining tasks Work has commenced in both the Field union (PreviousNext) and rich field (Lullabot) projects to investigate how feasible this is.
The two have agreed to join-forces and work towards a common goal
We have a slack channel #multifield
Recent comments
Hello, Backdrop CMS has options for multilingual sites, but they are limited and do not cover all needs. A complete solution for a multilingual site requires the installation of i18. I...
How to translate my site content
Hi Steve, you can add a site-wide language switcher for visitors as a block to your layout(s). To do so, go to your layout, click "Add block", e.g. in the Header region, search for "language",...
How to translate my site content
As some folks have mentioned, some work has gone into this. We actually added the ability to have "draft revisions" into core, BUT we never completed the front end user interface for this...
managing draft revisions while still having a version published