J'essaie d'activer le deuxième plugin automatiquement lors de l'activation du premier plugin.
register_activation_hook(__FILE__, 'example_activation' );
function example_activation() {
include_once(ABSPATH .'/wp-admin/includes/plugin.php');
activate_plugin('hello.php');
}
Son ne fonctionne pas à l'intérieur de register_activation_hook .. Son fonctionne si je l'utilise directement comme:
include_once(ABSPATH .'/wp-admin/includes/plugin.php');
activate_plugin('hello.php');
Comment puis-je le réparer? Merci pour l'aide
Solution:
J'utilise ceci pour moi maintenant:
// When this plugin activate, activate another plugin too.
register_activation_hook(__FILE__, function(){
$dependent = 'hello.php';
if( is_plugin_inactive($dependent) ){
add_action('update_option_active_plugins', function($dependent){
/* for some reason,
activate_plugin($dependent);
is not working */
activate_plugin('hello.php');
});
}
});
// When this plugin deactivate, deactivate another plugin too.
register_deactivation_hook(__FILE__, function(){
$dependent = 'hello.php';
if( is_plugin_active($dependent) ){
add_action('update_option_active_plugins', function($dependent){
deactivate_plugins('hello.php');
});
}
});