Entity Reference Purger removes orphaned (dangling) entity references when an entity is deleted.
Problem/Motivation
Entity reference field items are not removed when the referenced entity is deleted.
E.g.
- Create taxonomy term "dogs" (tid: 1).
- Create taxonomy term "cats" (tid: 2).
- Create node "Animals" with references to terms dogs & cats.
- Delete the "dogs" term. Node "Animals" will still have reference to term "dogs" even though there is no longer such a term.
This is not a problem if you are using Drupal UI or you are not validating entities before saving (programmatically). Some examples where it can cause problems:
- Validation errors when using $entity->validate()
- Search facets with an incorrect count of results.
- Cryptic error messages when editing entities that contain collapsed Paragraphs.
- Null fields in GraphQL results (which is invalid GraphQL).
- ...
How this module works
This module will automatically remove all orphaned (dangling) entity references from parent entities on child entity delete. All you need to do is to enable this option in the entity reference field settings. To handle performance issues on huge systems with tens of thousands (or more) dangling references using "Queue option" is recommended.
Project information
- Module categories: Content Editing Experience
- 845 sites report using this module
- Created by bojan.m on , updated
- Drupal 10 is here!
This module is compatible with Drupal 10.
- Stable releases for this project are covered by the security advisory policy.
There are currently no supported stable releases.
Releases
Development version: 1.0.x-dev updated 16 Apr 2024 at 11:06 UTC