Articles

Le système d’entités de Drupal 8
Les entités sont des classes typées avec des méthodes :
Méthodes génériques | $entity->id() |


- Drupal 7 - les entités étaient des objets génériques stdClass.
- Drupal 8 - les entités sont désormais des objets typés spécifiques, chaque type d'entité définissant la classe utilisée pour les instances de cette entité.
Exigences
Les classes d'entités doivent être placées dans l'espace de noms Entity du module qui fournit le type d'entité, par exemple \Drupal\[nom_module]\Entity. Cela signifie que les fichiers PHP de classe d'entité se trouvent dans le dossier src/Entity du module.


Couvre les méthodes API des objets généraux
- Entity::create()
- Entity::load()
- Entity::save()
- Entity::id()
- Entity::bundle()
- Entity::isNew()
- Entity::label()
Des API plus spécifiques seront abordées dans des chapitres dédiés.


Dans Drupal 8, les bundles sont un type de conteneur d’informations qui contiennent des définitions ou des réglages de champs. Ils sont parfois appelés « sous-types ». Les bundles sont optionnels et se situent sous les types d’entités dans la hiérarchie des conteneurs d’informations.


Les objets de configuration utilisent l’API Entity pour sauvegarder la configuration dans la base de données.


Cette fiche de référence contient un aperçu des méthodes, classes et interfaces fréquemment utilisées pour les objets de contenu.


Audience cible
Cette documentation s’adresse principalement aux développeurs ayant une expérience en programmation orientée objet en PHP, Drupal 6 ou Drupal 7, ainsi qu’à ceux qui souhaitent apprendre les principes de Drupal 8.
La documentation sur la création d’un type d’entité de contenu dans Drupal 8 inclut une liste complète des options disponibles.
Création d’un type de contenu sans bundle dans Drupal 8.
Dans ce cas, nous créons un objet contenu Drupal 8 qui n’a aucun bundle.


Cette page est une copie de la configuration « Enabled by Default » dans un module Drupal 8. Elle doit être considérée comme une référence amortie.
La création d’un type de contenu personnalisé est devenue assez simple grâce à la nouvelle API de configuration introduite avec Drupal 8.


Parfois, lorsque vous extrayez un type de contenu depuis un module personnalisé, vous pouvez également ajouter des champs liés à ce type de contenu. La possibilité de créer automatiquement ces champs vous permet de supprimer et réinstaller sur plusieurs sites sans laisser de champs inutiles et en garantissant que vous n’oublierez pas de les ajouter. Il existe deux façons d’ajouter ces champs dans votre base de code, que nous allons examiner.


Parfois, lorsque vous extrayez un type de contenu dans un module personnalisé, vous pouvez également ajouter des champs liés à ce type de contenu. La possibilité de créer automatiquement des champs vous permet de supprimer et réinstaller sur plusieurs sites sans laisser de champs inutiles et en garantissant que vous n’oublierez pas de les ajouter. Il existe deux façons d’ajouter ces champs à votre base de code, que nous allons examiner.
