Respostas:
Há apenas uma etapa, 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);
Aqui está como você faria isso com uma atualização do banco de dados usando a hook_update_N
partir de outro *.install
arquivo do módulo ativado . Em seguida, você pode visitar /update.php
no navegador ou executar $ drush updb
na linha de comando para que esse código seja acionado.
/**
* 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);
}
No Drupal 7, não há mais drupal_install_modules () ; portanto, se você deseja forçar o processo de instalação do módulo programaticamente (se já estiver ativado), pode usar:
module_invoke('module_name', 'install');
Para ativar, é simplesmente:
module_enable(array('module_name'));
Ou usando drush
como parte do processo de implantação:
drush -y en module_name
Para o drupal 8, você pode usar o seguinte:
\Drupal::service("module_installer")->install(["my_custom_module"]);
Em drush:
drush php-eval '\Drupal::service("module_installer")->install(["my_custom_module"]);'