Error message

You are browsing documentation for drupal 7.x, which is not supported anymore. Read the updated version of this page for drupal 11.x (the latest version).

function DrupalDefaultEntityController::attachLoad

Attaches data to entities upon loading.

This will attach fields, if the entity is fieldable. It calls hook_entity_load() for modules which need to add data to all entities. It also calls hook_TYPE_load() on the loaded entities. For example hook_node_load() or hook_user_load(). If your hook_TYPE_load() expects special parameters apart from the queried entities, you can set $this->hookLoadArguments prior to calling the method. See NodeController::attachLoad() for an example.

Parameters

$queried_entities: Associative array of query results, keyed on the entity ID.

$revision_id: ID of the revision that was loaded, or FALSE if the most current revision was loaded.

5 calls to DrupalDefaultEntityController::attachLoad()
CommentController::attachLoad in modules/comment/comment.module
Attaches data to entities upon loading.
DrupalDefaultEntityController::load in includes/entity.inc
Implements DrupalEntityControllerInterface::load().
NodeController::attachLoad in modules/node/node.module
Attaches data to entities upon loading.
TestEntityBundleController::attachLoad in modules/field/tests/field_test.entity.inc
Attaches data to entities upon loading.
UserController::attachLoad in modules/user/user.module
Attaches data to entities upon loading.
4 methods override DrupalDefaultEntityController::attachLoad()
CommentController::attachLoad in modules/comment/comment.module
Attaches data to entities upon loading.
NodeController::attachLoad in modules/node/node.module
Attaches data to entities upon loading.
TestEntityBundleController::attachLoad in modules/field/tests/field_test.entity.inc
Attaches data to entities upon loading.
UserController::attachLoad in modules/user/user.module
Attaches data to entities upon loading.

File

includes/entity.inc, line 350

Class

DrupalDefaultEntityController
Default implementation of DrupalEntityControllerInterface.

Code

protected function attachLoad(&$queried_entities, $revision_id = FALSE) {
 // Attach fields.
 if ($this->entityInfo ['fieldable']) {
 if ($revision_id) {
 field_attach_load_revision ($this->entityType , $queried_entities);
 }
 else {
 field_attach_load ($this->entityType , $queried_entities);
 }
 }
 // Call hook_entity_load().
 foreach (module_implements ('entity_load') as $module) {
 $function = $module . '_entity_load';
 $function($queried_entities, $this->entityType );
 }
 // Call hook_TYPE_load(). The first argument for hook_TYPE_load() are
 // always the queried entities, followed by additional arguments set in
 // $this->hookLoadArguments.
 $args = array_merge (array(
 $queried_entities,
 ), $this->hookLoadArguments );
 foreach (module_implements ($this->entityInfo ['load hook']) as $module) {
 call_user_func_array ($module . '_' . $this->entityInfo ['load hook'], $args);
 }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.