Wann sollte ich ein vorhandenes Feld verwenden?

8

Wann sollte ich beim Hinzufügen neuer Felder zu einem Inhaltstyp ein vorhandenes Feld erneut speichern? Wenn ich beispielsweise ein Bildfeld für meinen Inhaltstyp benötige, ist es immer eine gute Idee, ein vorhandenes Bildfeld wiederzuverwenden?

hknik
quelle
3
Wenn es auf die gleiche Weise verwendet wird, für dieselben Benutzer / Rollen zugänglich ist, auf die gleiche Weise thematisiert wird usw., ist die Wartung viel einfacher, wenn Sie dasselbe Feld wiederverwenden.
Jimajamma
1
Wenn ein Bild beispielsweise ein Benutzerfoto in einem Inhaltstyp sein soll, aber eine Miniaturansicht eines Produktbilds in einem anderen, dann erstellen Sie keine anderen Felder.
Jimajamma
@ Jimajamma Bist du dir über den zweiten Kommentar sicher? Ich denke, es kann in Anzeigeeinstellungen des Inhaltstyps konfiguriert werden.
Hknik
Sicher, es kann so angezeigt werden, wie Sie es möchten. Mein Kommentar bezieht sich auf den Namen des Feldes. Beispielsweise ist die Verwendung von field_avatar als Profilbild eines Benutzers in einem Inhaltstyp, der als Produktminiatur in einem anderen Typ überladen ist, aus der Sicht der Benennung nur verwirrend.
Jimajamma

Antworten:

9

Berücksichtigen Sie die Vor- und Nachteile der Wiederverwendung von Feldern:

  • Leistung : Die Wiederverwendung von Feldern führt zu einem leichten Leistungsgewinn. Für die meisten Websites mit einer moderaten Anzahl von Feldern ist dies jedoch ein vernachlässigbarer Unterschied.
  • Wartbarkeit : Wenn Sie dasselbe Feld theoretisch für denselben Zweck für mehrere Inhaltstypen wiederverwenden und später die Funktionalität ändern möchten, müssen Sie es nur an einer Stelle ändern. Wenn Sie es über Entitäten hinweg auf dieselbe Weise thematisieren möchten, müssen Sie nur einen einzigen Selektor verwenden. In der Praxis passiert dies selten, und häufiger ist das Gegenteil der Fall - Sie haben dasselbe Feld an mehreren Stellen verwendet und dann erkannt, dass sie sich tatsächlich anders verhalten müssen.
  • Setup : Das erneute Hinzufügen eines vorhandenen Felds dauert offensichtlich weniger lange als das Hinzufügen eines neuen.
  • Portabilität : Wenn Sie Felder mit Features exportieren, ist es am besten, sie nicht zwischen Entitäten wiederzuverwenden, es sei denn, dies ist unbedingt erforderlich. Technisch gesehen ist die Wiederverwendung von Feldern nichts Falsches (da Sie Feldbasen und Feldinstanzen separat exportieren können), aber in der Praxis führt dies nur zu Verwirrung und zirkulären Abhängigkeiten. Wenn Sie Felder nicht wiederverwenden möchten, können Sie ihnen den Inhaltstyp / das Bundle voranstellen, an das sie angehängt sind, z. B. "field_article_image", "field_page_taxonomy" usw., was die Portabilität und Wartung vereinfacht.

Falls es aus meinem Ton dort nicht klar ist, ist es meine Präferenz, Felder niemals wiederzuverwenden, es sei denn, es ist zu 100% klar, dass sie wirklich für denselben Zweck verwendet werden und für immer verwendet werden.

Dane Powell
quelle
Einverstanden. Wenn Sie unterschiedliche Feldeinstellungen haben, sagen Sie, dass ein Bild nur 1 hat, während das andere unbegrenzt verwenden kann. Wenn Sie das Feld ändern, werden alle Instanzen davon geändert.
Chadpeppers