So erstellen Sie einen neuen Inhaltstyp programmgesteuert in Drupal 7

8

Ich baue ein Modul (mein_Modul) in Drupal 7. Es hat einige Funktionen und wird auch einen neuen Inhaltstyp erstellen. In my_module.install habe ich die hook_install (my_module_install) implementiert. Kann ich mehr eine Implementierung von hook_install verwenden, um einen neuen Inhaltstyp (my_cck_install) in diesem Modul zu erstellen? Wenn (ja), wie soll ich das machen? Else: Habe ich das in einem anderen Modul? : -)

    
alsator 14.11.2011, 07:45
quelle

4 Antworten

8

Sie können nicht mehr als eine Implementierung von hook_install im selben Modul verwenden. in PHP können Sie nicht 2 Funktionen mit dem gleichen Namen haben, was dies ausschließt.

Sie müssen Ihren neuen Inhaltstyp nur in der gleichen hook_install hinzufügen (sehen Sie sich an, wie das Standard-Installationsprofil dies unter /profiles/standard/standard.install tut). So füge ich immer neue Inhaltstypen aus der Installationsdatei hinzu (am Beispiel eines Testimonial-Moduls):

%Vor%     
Clive 14.11.2011 08:49
quelle
3

Der folgende Code erstellt einen Inhaltstyp namens "Event" mit dem Maschinennamen "event" und einem Titelfeld -

%Vor%

Sie sollten es in Ihre .module Datei einfügen ... wenn Sie zusätzliche Felder hinzufügen möchten, lassen Sie es mich wissen und ich werde Sie mit dem Code Patch ... viel Glück!

    
BLV 18.12.2012 19:40
quelle
1

/ *  * Implementierung in Hook-Knoten-Informationen in .Module-Datei  * /

%Vor%

}

/ **  * Implementiere hook_form ()  * /

%Vor%

} / **  * Implementiert hook_install () in .install file .  * /

%Vor%

}

/ *  * Definieren Sie Ihre Felder  * /

%Vor%

}

/ *  * Definieren Sie Ihre Instanz von Feldern  * /

%Vor%

}

/ **  * Implementiert hook_uninstall ().  * /

%Vor%

}

Das ist es.

    
Vikram Singh Shekhawat 09.09.2016 15:19
quelle
0
%Vor%

Fügen Sie die Implementierung zu mymodule.install folgendermaßen hinzu:

%Vor%

Sie können eine detaillierte Beschreibung mit Code von hier

erhalten >     
Mujeebu Rahman 25.06.2016 22:10
quelle