Respuestas:
Solo hay un paso, usando module_enable()
:
$modules = array('module1', 'module2'); // Array of module names
$enable_dependencies = TRUE; // Whether or not to enable dependant modules
module_enable($modules, $enable_dependencies);
Así es como lo haría con una actualización de la base de datos utilizando hook_update_N
otro *.install
archivo de módulo habilitado . Luego puede visitarlo /update.php
en el navegador o ejecutarlo $ drush updb
en la línea de comando para que se active este código.
/**
* Enable module1 and module2.
*/
function MYMODULE_update_7101() {
// Array of module names.
$modules = ['module1', 'module2'];
// Whether or not to enable dependant modules.
$enable_dependencies = TRUE;
module_enable($modules, $enable_dependencies);
}
En Drupal 7 no hay más drupal_install_modules () , por lo tanto, si desea forzar el proceso de instalación del módulo mediante programación (si ya está habilitado), puede usar:
module_invoke('module_name', 'install');
Para habilitar, es simplemente:
module_enable(array('module_name'));
O utilizando drush
como parte del proceso de implementación:
drush -y en module_name
Para drupal 8 puede usar lo siguiente:
\Drupal::service("module_installer")->install(["my_custom_module"]);
En drush:
drush php-eval '\Drupal::service("module_installer")->install(["my_custom_module"]);'