Wie lösche ich ein Feature?

8

Ich habe ein Feature-Modul in Site-1 erstellt.

Dann habe ich das Funktionsmodul in Site-2 installiert. Diese Funktion erstellt einen neuen Inhaltstyp und aktiviert ein Modul. Dann habe ich den neuen Inhaltstyp und das Modul aktiviert.

So weit, ist es gut.

Jetzt habe ich das Feature-Modul (drush) deaktiviert und deinstalliert. Ich habe erwartet, dass der Inhaltstyp gelöscht und das Modul deaktiviert wird. Ich meine den Inhaltstyp und das Modul, das das Feature erstellt hat.

Aber sie sind immer noch da ...

Wie deaktiviere ich eine Funktion und entferne alle von der Funktion erstellten Elemente?

UPDATE : Schritte zum Deaktivieren der Funktion:

1) drush dis myFeatureModule

2) drush pm-deinstalliere myFeatureModule

3) in admin/structure/featuresder Funktion myFeatureModuleist deaktiviert

4) Die Schaltfläche Löschen für den Inhaltstyp (erstellt von dieser Funktion) in admin/structure/typesfehlt ...

Chefnelone
quelle

Antworten:

2

Als erstes möchten Sie das Funktionsmodul deaktivieren (und deinstallieren). Das entfernt nicht immer alles, was das Modul ursprünglich erstellt hat. Sobald dieses Funktionsmodul deinstalliert ist, können Sie den Inhaltstyp und alle anderen auf der Site verbleibenden Elemente manuell löschen.

Einige zusätzliche Details finden Sie bei dieser anderen Frage . Es enthält ein Beispiel dafür, wie das Funktionsmodul einen Deinstallations-Hook hinzufügen kann, um den Inhaltstyp zu entsperren. Wenn Sie sich die in diesem Beispiel verwendete Abfrage ansehen, sollten Sie in der Lage sein, die Abfrage manuell auszuführen und den fehlerhaften Inhaltstyp zu entsperren.

Craig
quelle
1
Ich habe das bereits getan, aber die Schaltfläche "Löschen" für den Inhaltstyp unter admin/structure/typesfehlt. Dann kann es nicht gelöscht werden. Bitte werfen Sie einen Blick auf mein UPDATE
Chefnelone
Drupal zeigt die Schaltfläche zum Löschen nicht an, da es glaubt, dass der Inhaltstyp einem Modul gehört. Sie können ihn jedoch trotzdem löschen, indem Sie die richtige URL eingeben. admin / structure / types / manage / [content_type] / delete <- URL-Muster. Ändern Sie einfach [content_type] in den Inhaltstyp, den Sie löschen möchten.
Craig
Gibt es eine Möglichkeit, die Schaltfläche zum Löschen wieder anzuzeigen?
Bart
Ich habe meine Antwort mit einem Link zu einer ähnlichen Frage aktualisiert, die eine Abfrage enthält, mit der Sie den Inhaltstyp entsperren können.
Craig
-3

Nachdem Sie Ihre Funktion deaktiviert haben, sollten Sie in der Lage sein:

Websites> alle> Module> benutzerdefinierte> Funktionen

Suchen Sie dort Ihr Modul und löschen Sie einfach die Dateien.

Victoria
quelle