Wie ändern Sie, an welchen Inhaltstyp ein Feld angehängt ist (welchem ​​gehört es?)


7

Beim Exportieren der Konfiguration für meine Site mithilfe des Funktionsmoduls habe ich festgestellt, dass eines der Felder, die ich für viele Inhaltstypen verwende, ursprünglich für den Inhaltstyp "Nachrichten" anstelle des Inhaltstyps "Artikel" erstellt wurde. Dies stellt ein Problem dar, da alle Funktionen, die ich exportiere, jetzt von einem völlig unabhängigen Modul (Nachrichten) abhängig sind, um ein gemeinsames Feld (field_image) bereitzustellen.

Ich möchte die Entität, die field_image "besitzt", in einen Artikel ändern. Auf diese Weise kann ich eine Basisfunktion exportieren, die eine Reihe allgemeiner Felder bereitstellt, und die restlichen Funktionen hängen davon ab, anstatt dass alle von Nachrichten abhängen.

Wie kann ich ändern, welcher Inhaltstyp field_image besitzt, ohne alles zu beschädigen?

Antworten:


1

Features sind intelligent genug, um das Modul zu benötigen, das das Feld implementiert, ohne ein Bundle zu benötigen, das Sie nicht benötigt haben. Sie können daher die von Ihnen erstellte Funktion überprüfen, um sicherzustellen, dass Sie den gewünschten Inhaltstyp nicht angegeben haben.


1

Nun, dies ist nicht die perfekte Lösung, kann aber ein Weg sein, sie zu finden.

Ändern Sie Ihren Inhaltstyp in den gewünschten Inhalt und exportieren Sie die Funktion. Sie nehmen ein Difftool (Winmerge) und untersuchen die Unterschiede zwischen der alten Version Ihres Funktionsmoduls und der neuen.

Es besteht eine gute Chance, dass Sie herausfinden, was Sie ändern müssen.

Vergessen Sie nicht, vor dem Start eine DB-Sicherung durchzuführen.


1

Ich denke, Sie müssen nur den Bundle-Typ des Feldes ändern. Möglicherweise hat Ihr Feature das Feld, das zum "Nachrichten" -Paket gehört. Wenn Sie es in "Artikel" ändern, wird es getan.

Öffnen Sie die Datei feature.field.inc und suchen Sie nach "bundle". Ändern Sie dann den Wert für den richtigen. Beachten Sie, dass der Array-Index der Feldname ist. Achten Sie daher darauf, das falsche Feld nicht zu ändern.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.