Il y a beaucoup de ressources pour le faire dans Drupal 6, mais je n'ai pas trouvé de solution pour Drupal 7.
Comment puis-je installer et activer les modules sélectionnés?
Il n'y a qu'une seule étape, en utilisant 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);
Voici comment procéder avec une mise à jour de la base de données en utilisant hook_update_N
d'un autre module activé *.install
fichier. Ensuite, vous pouvez visiter /update.php
dans le navigateur ou exécutez $ drush updb
sur la ligne de commande pour déclencher ce code.
/**
* 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);
}
Dans Drupal 7 il n'y a plus drupal_install_modules () , donc si vous voulez forcer le processus d'installation du module par programme (s'il est déjà activé), vous pouvez utiliser:
module_invoke('module_name', 'install');
Pour l'activer, c'est simplement:
module_enable(array('module_name'));
Ou en utilisant drush
dans le cadre du processus de déploiement:
drush -y en module_name
Pour drupal 8, vous pouvez utiliser ce qui suit:
\Drupal::service("module_installer")->install(["my_custom_module"]);
Dans l'ivresse:
drush php-eval '\Drupal::service("module_installer")->install(["my_custom_module"]);'