Lorsque nous allons sur le chemin /admin/structure/types/manage/article/fields
et utilisons l' Add new field
option ou l' Add existing field
option, cela crée-t-il un champ, crée-t-il une instance de champ ou attache-t-il une instance de champ? Comment les différencier? Donc, par programme, quand utiliser les API field_create_field , field_create_instance et field_attach?
Dans la documentation de l'API de champ, il ne mentionne que l'interface utilisateur d'administration et ne parle jamais du chemin où créer les champs et les instances de champ. C'est donc déroutant. Je ne sais même pas si j'ai du sens.
node/add/article
sont donc des instances de champ (qui sont réutilisées dans plusieurs types d'entités différents). Et les champs au chemin /admin/structure/types/manage/article/fields
sont des champs. Dans la base de données, je ne vois pas de table d'instance de champ mais uniquement une table field_data que, je suppose, nous obtenons lorsque nous créons un champ à path en /admin/structure/types/manage/article/fields
utilisant field_create_field
. Et une instance est ensuite attachée à un bundle (article dans ce cas) que nous voyons au chemin node/add/article
.