Es geht nicht so sehr um die Vorteile, sondern vielmehr darum, was für eine bestimmte Situation angemessen ist, wie Sie gesagt haben. Sie können so ziemlich alles mit einem Knoten darstellen, und in 99% der Situationen (wie ich zumindest festgestellt habe) müssen Sie keine benutzerdefinierten Entitätstypen implementieren.
Ich stelle mir den taxonomy_term
Entitätstyp immer als ein gutes Beispiel dafür vor, warum nicht alles ein Knoten- / Inhaltstyp sein sollte:
Ein Taxonomiebegriff dient im Wesentlichen zum Gruppieren verschiedener Entitäten und erfordert daher nicht die gleiche Funktionalität wie ein Knoten. Während Sie theoretisch einen Inhaltstyp verwenden könnten , um diese Funktionalität auszuführen (möglicherweise mit einem Knotenreferenzfeld), muss ein Taxonomiebegriff nicht dasselbe tun wie ein Knoten, daher ist dies nicht wirklich sinnvoll. Das gleiche gilt für die gesagt werden user
und taxonomy_vocabulary
Entitätstypen.
Daher wird ein Taxonomiebegriff als separate Entität erstellt und so programmiert, dass er nur das tut, was er benötigt, und trotzdem die Vorteile erhält, dass Felder usw. angehängt werden können.
Ich denke, die einfache Antwort lautet: Wenn ein Knoten- / Inhaltstyp nicht das tut, was Sie benötigen, oder wenn es sich nur um eine massive Menge an Overkill / Overhead handelt, für die nur ein sehr geringer Nutzen erzielt wird, sollten Sie eine benutzerdefinierte Entität schreiben.
Dies basiert nur auf meiner persönlichen Erfahrung; Es würde mich interessieren, was jemand, der direkt mit der Drupal-Kernentwicklung zu tun hat, dazu zu sagen hat.