Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Release: Opensolr Search 4.5.0 Minor update available for module opensolr_search (4.5.0). Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Usage Milestone: Views Reference Filter Module entityreference_filter crossed 10,000 active installs. Usage Milestone: Dropdown Language Module dropdown_language crossed 10,000 active installs. Usage Milestone: Paragraphs Browser Module paragraphs_browser crossed 10,000 active installs. Usage Milestone: OpenAPI Module openapi crossed 10,000 active installs. Usage Milestone: Decoupled Router Module decoupled_router crossed 10,000 active installs. Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Entity Data

22 sites Security covered Drupal 10–11 Entity ecosystem
View on drupal.org

This module provides a way to store custom data directly on any Drupal entity, similar to how user data is managed. It allows you to set, get, and delete this data programmatically, and the data is automatically attached to the entity when loaded and saved when the entity is updated.

Entity data provides a simple API to add data to any entity.

Drupal 10, 11

Entity data service works similar to core's 'user.data' service. Except the we don't restrict it only to user entity. You can set data for any content entities.

The primary usage involves the getter/setter methods:

// Set custom data to entity.
\Drupal::service('entity.data')->set($module_name, $entity_id, $custom_data_name, $entity_type, $value);

// Get custom data for entity.
\Drupal::service('entity.data')->get($module_name, $entity_id, $custom_data_name, $entity_type);

// Delete custom data for entity
\Drupal::service('entity.data')->delete($module_name, $entity_id, $custom_data_name, $entity_type);

Drupal 7

It works similar to core's variable_set/get/del system. Except the data is associated with a entity and only loaded when that entity is loaded.

The primary usage involves the getter/setter methods:

entity_data_set($entity_type, $entity_id, $name, $value, $revision_id = 0, $language = LANGUAGE_NONE);

entity_data_get($entity_type, $entity_id, $name, $default = NULL, $revision_id = 0, $language = LANGUAGE_NONE);

entity_data_del($entity_type, $entity_id, $name, $revision_id = 0, $language = LANGUAGE_NONE);

In addition to using the getter/setter methods, entity_data is automatically attached on entity_load and saved on entity_insert/entity_update. The data can be accessed using following the format:
$entity->entity_data[$name]

This also means that entity data will export and import with the entity.

Sponsors

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
1
Tracked since
Feb 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 1
Maintenance
Dormant

Releases

Version Type Core Release date
1.1.1 Stable 10–11 Feb 19, 2025