Open Y Entity Reference Tweaks module.
The idea of the module is to provide enhancements to the Core entity reference fields in Open Y installation profile purposes.
Entity Reference Selection Handler plugins
The plugins stored at src/Plugin/EntityReferenceSelection
must be used in ER-fields if additional bundle filtering is setup and you export configuration of those fields into the profile.
Default Selection Handlers put dependency for each single bundle setup there, because the core works the way, that 'target_bundles' field settings entries add dependencies. See EntityReferenceItem::calculateDependencies()
DefaultSelectionNoDependency
is basically needed to create a label for the group of Open Y selection handlers.
SelectionNoDependecyTrait
is useful for inheriting from existing entity type specific selection handlers (see NodeSelectionNoDependency implementation as example).
See Traits Precendence section to understand how PHP handles method overrides when traits are used.
Migrating from core selection handlers to Open Y selection handlers
- Go to the required entity refrence field configuration page that is provided by Field UI
- Find "REFERENCE TYPE" section that contains "Reference method" field and a set of checkboxes for bundles limiting
- Memorize the set of the selected bundles
- Update "Reference method" value from 'Default' to 'Default (Open Y)'
- Restore the state of the checkboxes (it can be named 'Content types' for nodes, or just 'Bundles' for other entity types)
- Submit the form
- Export the config (or the whole feature)
- Verify field config doesn't contain dependencies to the bundle configs
- Make sure the module now depends on
openy_er
module