Nehmen wir an, ich habe ein Team mit Mitgliedern. Ich habe einen Inhaltstyp für das Team und einen Inhaltstyp für einzelne Teammitglieder. Angenommen, es gibt auch andere Beziehungen, z. B. können Teams zu Abteilungen gehören, und es gibt Projekte, die Einzelpersonen oder Teams zugewiesen werden können.
Nach meinem Verständnis gibt es zwei Möglichkeiten, die Beziehungen zwischen diesen Entitäten zu definieren - entweder Entitätsreferenzen oder die Verwendung von Taxonomie-Begriffen. Wann sollte ich einen Typ über den anderen verwenden? Ist es am besten, nur eine Methode zu wählen oder sie zu mischen?
Es scheint mir, dass Taxonomie am flexibelsten ist, weil es einfach ist, Bäume mit Taxonomietypen zu erstellen, oder wenn ich dann innerhalb eines Teams beschlossen habe, eine Hierarchie im Team zu erstellen, ist die Funktionalität bereits vorhanden (ziehen Sie einfach die Taxonomiebegriffe in die Hierarchie), während ich mir, wenn ich die Entitätsreferenz verwendet habe, keinen einfachen Weg vorstellen kann, dies zu tun (außer Taxonomie hinzuzufügen, was dann zu Redundanz führt).
Es fühlt sich an, als ob es etwas gibt, das ich hier nicht verstehe, aber ich bin mir nicht sicher, was es ist!
Jede Hilfe wäre dankbar.
quelle
Antworten:
Sie sprechen hier von zwei verschiedenen Konzepten. Die erste Frage bezieht sich darauf, wann man Inhalte in verschiedene Kategorien einteilen möchte oder ob man eine Beziehung zwischen vorhandenen Inhaltstypen aufbauen möchte. Die andere Frage ist, ob es bei Verwendung einer Taxonomie besser ist, ein Taxonomie-Referenzfeld oder ein Entitätsreferenzfeld zu verwenden.
Zum ersten Konzept
Dies hängt von Ihrem Anwendungsfall ab. Taxonomien eignen sich hervorragend zum Erstellen von Hierarchien, wie Sie bereits erwähnt haben. Im Idealfall sollten Sie jedoch keine Taxonomien verwenden, um tatsächlichen Inhalt zu enthalten. Der Grund dafür ist einfach: Während Sie Taxonomiebegriffen Felder hinzufügen können, verwenden alle Hierarchieebenen in einer Taxonomie dieselben Felder. Wenn Sie Ihr Beispiel mit Mitgliedern verschiedener Teams nehmen, kann dies zu Problemen führen. Wenn Sie mehr Informationen über ein Team oder Mitglied als nur den Namen speichern möchten, möchten Sie beispielsweise Informationen über den Vornamen, den Nachnamen und die Biografie eines Mitglieds speichern und diese Felder zur Taxonomie hinzufügen auch zu Teambedingungen verfügbar. Wenn Sie ein Teambeschreibungsfeld für die Teams hinzufügen, werden diese für die Teammitglieder angezeigt.
Taxonomien werden am besten verwendet, wenn ähnliche Elemente hierarchisch organisiert werden . Wie Tags zum Beispiel:
Entitätsreferenzen eignen sich hervorragend zum Herstellen von Beziehungen zwischen Inhaltstypen. Beispiele hierfür sind ein Knotentyp "Team" und ein Knotentyp "Teammitglied" mit jeweils eigenen Feldern. Oder ein Knotentyp "Song", der auf ein "Album" verweist, das selbst auf einen "Musiker" verweist. In dieser Hinsicht sind Entitätsreferenzen flexibler als Taxonomien, da sie komplexere Beziehungen ermöglichen. Wenn Sie Ansichten verwenden, können Sie diese Beziehungen auch verwenden. Anhand Ihres Beispiels können Sie eine Ansicht aller Teammitglieder erstellen und die Entitätsreferenz für eine Beziehung verwenden. Außerdem können Sie ein beliebiges Feld im Teaminhaltstyp zusammen mit Feldern aus dem Mitgliedsknoten anzeigen.
Das Mischen von referenzierten Knoten- und Taxonomiefeldern ist ebenfalls legitim. In Ihrem Beispiel mit den Teams können sowohl Team als auch Mitglied ein Knoten sein, der sich gegenseitig mit einer Entitätsreferenz referenziert. Gleichzeitig könnte die Abteilung eine Taxonomie mit allen verfügbaren Abteilungen sein.
Zum zweiten Konzept
Als DO D7 veröffentlichte, wurde es mit einem Taxonomie-Referenzfeld geliefert, das beim Referenzieren von Taxonomien verwendet werden kann. Seitdem wurde das Entity-API-Modul und folglich das Entity-Referenzmodul veröffentlicht. Da Begriffe und Taxonomien Entitäten sind, kann man sie wie jede andere Entität referenzieren. Zu diesem Zeitpunkt arbeiten die beiden sehr ähnlich, und in vielen Fällen spielt es keine Rolle, welche Sie verwenden. Es gibt jedoch noch einige Module, die Feldformatierer und Widgets bereitstellen, die nur für das eine oder andere funktionieren. Es hängt also meistens davon ab, ob Sie einen solchen Formatierer benötigen, wenn Sie eine Taxonomiereferenz oder eine Entitätsreferenz verwenden sollten.
Da DO das Taxonomie-Referenzfeld in D8 durch das Entitätsreferenzfeld ersetzt, bevorzuge ich die Verwendung des Entitätsreferenzfelds zur Verknüpfung mit Taxonomien anstelle des vom Taxonomiemodul bereitgestellten Felds.
quelle