Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/Entity/ContentEntityInterface.php \Drupal\Core\Entity\ContentEntityInterface
  2. 9 core/lib/Drupal/Core/Entity/ContentEntityInterface.php \Drupal\Core\Entity\ContentEntityInterface

Defines a common interface for all content entity objects.

Content entities use fields for all their entity properties and can be translatable and revisionable. Translations and revisions can be enabled per entity type through annotation and using entity type hooks.

It's best practice to always implement ContentEntityInterface for content-like entities that should be stored in some database, and enable/disable revisions and translations as desired.

When implementing this interface which extends Traversable, make sure to list IteratorAggregate or Iterator before this interface in the implements clause.

Hierarchy

Expanded class hierarchy of ContentEntityInterface

All classes that implement ContentEntityInterface

See also

\Drupal\Core\Entity\ContentEntityBase

\Drupal\Core\Entity\EntityTypeInterface

Related topics

57 files declare their use of ContentEntityInterface
BlockContentInterface.php in core/modules/block_content/src/BlockContentInterface.php
BlockContentModerationHandler.php in core/modules/content_moderation/src/Entity/Handler/BlockContentModerationHandler.php
comment.tokens.inc in core/modules/comment/comment.tokens.inc
Builds placeholder replacement tokens for comment-related data.
comment.views.inc in core/modules/comment/comment.views.inc
Provide views data for comment.module.
CommentInterface.php in core/modules/comment/src/CommentInterface.php

... See full list

File

core/lib/Drupal/Core/Entity/ContentEntityInterface.php, line 24

Namespace

Drupal\Core\Entity
View source
interface ContentEntityInterface extends \Traversable, FieldableEntityInterface, TranslatableRevisionableInterface, SynchronizableInterface {

}

Members

Name Modifiers Type Descriptionsort descending Overrides
EntityInterface::postCreate public function Acts on a created entity before hooks are invoked. 1
RevisionableInterface::preSaveRevision public function Acts on a revision before it gets saved. 3
EntityInterface::postSave public function Acts on a saved entity before the insert or update hook is invoked. 8
EntityInterface::preSave public function Acts on an entity before the presave hook is invoked. 8
EntityInterface::postDelete public static function Acts on deleted entities before the delete hook is invoked. 7
EntityInterface::preDelete public static function Acts on entities before they are deleted and before hooks are invoked. 6
EntityInterface::postLoad public static function Acts on loaded entities. 2
RefinableCacheableDependencyInterface::addCacheableDependency public function Adds a dependency on an object: merges its cacheability metadata.
TranslatableInterface::addTranslation public function Adds a new translation to the translatable object.
RefinableCacheableDependencyInterface::addCacheContexts public function Adds cache contexts.
RefinableCacheableDependencyInterface::addCacheTags public function Adds cache tags.
EntityInterface::preCreate public static function Changes the values of an entity before it is created. 4
AccessibleInterface::access public function Checks data value access. 6
TranslatableRevisionableInterface::isRevisionTranslationAffectedEnforced public function Checks if the revision translation affected flag value has been enforced.
RevisionableInterface::isDefaultRevision public function Checks if this entity is the default revision.
RevisionableInterface::isLatestRevision public function Checks if this entity is the latest revision.
TranslatableRevisionableInterface::isDefaultTranslationAffectedOnly public function Checks if untranslatable fields should affect only the default translation.
TranslatableInterface::hasTranslation public function Checks there is a translation for the given language code.
FieldableEntityInterface::isValidationRequired public function Checks whether entity validation is required before saving the entity.
TranslatableRevisionableInterface::isRevisionTranslationAffected public function Checks whether the current translation is affected by the current revision.
RevisionableInterface::wasDefaultRevision public function Checks whether the entity object was a default revision when it was saved.
TranslatableInterface::isNewTranslation public function Checks whether the translation is new.
TranslatableInterface::isDefaultTranslation public function Checks whether the translation is the default one.
TranslatableRevisionableInterface::isLatestTranslationAffectedRevision public function Checks whether this is the latest revision affecting this translation.
EntityInterface::create public static function Constructs a new entity object, without permanently saving it. 1
EntityInterface::createDuplicate public function Creates a duplicate of the entity. 2
EntityInterface::delete public function Deletes an entity permanently. 1
TranslatableInterface::hasTranslationChanges public function Determines if the current translation of the entity has unsaved changes.
RevisionableInterface::isNewRevision public function Determines whether a new revision should be created on save.
FieldableEntityInterface::hasField public function Determines whether the entity has a field with the given name.
EntityInterface::isNew public function Determines whether the entity is new. 1
EntityInterface::enforceIsNew public function Enforces an entity to be new. 1
RevisionableInterface::setNewRevision public function Enforces an entity to be saved as a new revision.
TranslatableRevisionableInterface::setRevisionTranslationAffectedEnforced public function Enforces the revision translation affected flag value.
EntityInterface::toLink public function Generates the HTML for a link to this entity. 1
FieldableEntityInterface::get public function Gets a field item list.
EntityInterface::referencedEntities public function Gets a list of entities referenced by this entity. 2
EntityInterface::uriRelationships public function Gets a list of URI relationships supported by this entity. 1
TranslatableInterface::getTranslation public function Gets a translation of the data.
EntityInterface::getTypedData public function Gets a typed data object for this entity object. 1
FieldableEntityInterface::getFields public function Gets an array of all field item lists.
FieldableEntityInterface::toArray public function Gets an array of all field values. Overrides EntityInterface::toArray
FieldableEntityInterface::getFieldDefinitions public function Gets an array of field definitions of all contained fields.
FieldableEntityInterface::getTranslatableFields public function Gets an array of field item lists for translatable fields.
EntityInterface::bundle public function Gets the bundle of the entity. 1
EntityInterface::getConfigDependencyName public function Gets the configuration dependency name. 1
EntityInterface::getConfigTarget public function Gets the configuration target identifier for the entity. 1
FieldableEntityInterface::getFieldDefinition public function Gets the definition of a contained field.
EntityInterface::getEntityType public function Gets the entity type definition. 1
EntityInterface::uuid public function Gets the entity UUID (Universally Unique Identifier). 1
EntityInterface::getEntityTypeId public function Gets the ID of the type of the entity. 1
EntityInterface::id public function Gets the identifier. 1
EntityInterface::getConfigDependencyKey public function Gets the key that is used to store configuration dependencies. 1
EntityInterface::label public function Gets the label of the entity. 3
EntityInterface::language public function Gets the language of the entity. 1
RevisionableInterface::getLoadedRevisionId public function Gets the loaded Revision ID of the entity.
EntityInterface::getOriginalId public function Gets the original ID. 1
RevisionableInterface::getRevisionId public function Gets the revision identifier of the entity.
EntityInterface::toUrl public function Gets the URL object for the entity. 1
EntityInterface::hasLinkTemplate public function Indicates if a link template exists for a given key. 1
EntityInterface::load public static function Loads an entity. 1
EntityInterface::loadMultiple public static function Loads one or more entities. 1
TranslatableRevisionableInterface::setRevisionTranslationAffected public function Marks the current revision translation as affected.
RefinableCacheableDependencyInterface::mergeCacheMaxAge public function Merges the maximum age (in seconds) with the existing maximum age.
FieldableEntityInterface::baseFieldDefinitions public static function Provides base field definitions for an entity type. 7
FieldableEntityInterface::bundleFieldDefinitions public static function Provides field definitions for a specific bundle. 2
FieldableEntityInterface::onChange public function Reacts to changes to a field.
TranslatableInterface::removeTranslation public function Removes the translation identified by the given language code.
EntityInterface::getCacheTagsToInvalidate public function Returns the cache tags that should be used to invalidate caches. 3
TranslatableInterface::getTranslationLanguages public function Returns the languages the data is translated to.
TranslatableInterface::getUntranslated public function Returns the translatable object in the language it was created.
TranslatableInterface::isTranslatable public function Returns the translation support status.
SynchronizableInterface::isSyncing public function Returns whether this entity is being changed as part of a synchronization.
EntityInterface::save public function Saves an entity permanently. 3
FieldableEntityInterface::set public function Sets a field value.
EntityInterface::setOriginalId public function Sets the original ID. 1
SynchronizableInterface::setSyncing public function Sets the status of the synchronization flag.
FieldableEntityInterface::setValidationRequired public function Sets whether entity validation is required before saving the entity.
CacheableDependencyInterface::getCacheContexts public function The cache contexts associated with this object. 12
CacheableDependencyInterface::getCacheTags public function The cache tags associated with this object. 12
CacheableDependencyInterface::getCacheMaxAge public function The maximum age for which this object may be cached. 12
RevisionableInterface::updateLoadedRevisionId public function Updates the loaded Revision ID with the revision ID.
FieldableEntityInterface::validate public function Validates the currently set values. 1