J'ai un module qui ne fonctionne spécifiquement pas avec un autre module. Je veux savoir s'il existe un moyen de vérifier si ce module est activé et abandonnez l'installation par exemple ou grisez la boîte d'installation de sorte que mon module ne puisse être installé que si cet autre module est désactivé.
C'est comme des dépendances inverse!
Y a-t-il un moyen de faire cela correctement à Drupal?
Le module doit simplement mettre en œuvre Hook_Requirements () ; Une exigence pourrait être qu'un module n'est pas installé et si le module renvoie une erreur de hook_requirements()
, il ne sera pas installé.
Le module doit mettre en œuvre du code similaire à celui suivant:
function mymodule_requirements($phase) {
$requirements = array();
// Ensure translations don't break at install time
$t = get_t();
if ($phase == 'install') {
if (module_exists('other_module')) {
$requirements['mymodule'] = array(
'title' => $t('My module'),
'value' => $t('My module is not compatible with Other module.'),
'severity' => REQUIREMENT_ERROR,
);
}
}
return $requirements;
}