2012-12-04 7 views
12

मैं अक्षम करने में सक्षम होना चाहता हूं और फिर अपने स्थानीय वातावरण पर प्रोग्रामेटिक रूप से मॉड्यूल को अनइंस्टॉल करना चाहता हूं और फिर उस कोड को आसानी से धक्का देना चाहता हूं ताकि सब कुछ अपडेट हो। मुझे लगता है कि यह hook_update_N (http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_update_N/7) के साथ कुछ है, लेकिन यह सुनिश्चित नहीं है कि कहां से प्रारंभ करना है।प्रोग्रामेटिक रूप से ड्रूपल मॉड्यूल को अक्षम और अनइंस्टॉल कैसे करें?

उत्तर

34

सोचो मुझे जवाब मिला!

/** 
* Disable and uninstall the module. 
*/ 
function MODULE_update_7200() { 
    if(module_exists('MODULE')) { 
    module_disable(array('MODULE')); 
    drupal_uninstall_modules(array('MODULE')); 
    } 
} 

समारोह में नंबर अपने Drupal स्थापित प्रतिबिंबित करना चाहिए: मॉड्यूल .install फ़ाइल के भीतर, मैं इस कोड को जोड़ा। कैसे उन्हें यहाँ नंबर पर देखें: http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_update_N/7

1

Drupal 8

MYMODULE.install के अंदर रखा जा करने के लिए:

/** 
* Uninstall Field UI. 
*/ 
function MYMODULE_update_8001(&$sandbox) { 

    \Drupal::service('module_installer')->uninstall(['field_ui']); 

} 
संबंधित मुद्दे