entity_uri
function entity_uri
entity_uri($entity_type, $entity)
Returns the URI elements of an entity.
Parameters
$entity_type: The entity type; e.g. 'node' or 'user'.
$entity: The entity for which to generate a path.
Return value
An array containing the 'path' and 'options' keys used to build the URI of the entity, and matching the signature of url(). NULL if the entity has no URI of its own.
File
- includes/common.inc, line 8141
- Common functions that many Drupal modules will need to reference.
Code
function entity_uri($entity_type, $entity) { $info = entity_get_info($entity_type); list($id, $vid, $bundle) = entity_extract_ids($entity_type, $entity); // A bundle-specific callback takes precedence over the generic one for the // entity type. if (isset($info['bundles'][$bundle]['uri callback'])) { $uri_callback = $info['bundles'][$bundle]['uri callback']; } elseif (isset($info['uri callback'])) { $uri_callback = $info['uri callback']; } else { return NULL; } // Invoke the callback to get the URI. If there is no callback, return NULL. if (isset($uri_callback) && function_exists($uri_callback)) { $uri = $uri_callback($entity); // Pass the entity data to url() so that alter functions do not need to // lookup this entity again. $uri['options']['entity_type'] = $entity_type; $uri['options']['entity'] = $entity; return $uri; } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/includes!common.inc/function/entity_uri/7.x