WordPress Plugin désinstallation

Une méthode très utile à ajouter dans vos plugins WordPress, la gestion de la désinstallation. Cela vous permet ainsi de gérer des tâches ou actions lors de la désinstallation du plugin. La mise en oeuvre est très simple il vous suffit de faire appel au Hook uninstall. voici un exemple:

/* Hook Uninstall? */
if (function_exists('register_uninstall_hook')) {
	// $file: le nom complet du script implémentant la fonction de désinstallation, ex. uninstall.php fourni avec votre plugin.
	// $callback: le nom de la fonction appelée lors de la désinstallation, ex. 'uninstall'
	/* Enregistre la fonction de désinstallation dans WordPress */
	register_uninstall_hook($file, $callback);
}

/* Uninstall */
function uninstall() {
	// Ici le code de la désinstallation.
}

Et ainsi vous maîtrisez la désinstallation de votre plugin. Prenez soin de placer l’appel à l’enregistrement de la fonction dans votre init avant toute autre action au même titre que activate et deactivate.

Si votre plugin est une classe, et oui PHP5 permet l’utilisation POO plus avancé, et offre ainsi certains avantages, il vous suffit de modifier le callback, exemple:

/* Hook Uninstall? */
if (function_exists('register_uninstall_hook')) {
	// $file: le nom complet du script implémentant la fonction de désinstallation, ex. uninstall.php fourni avec votre plugin.
	// $object: votre classe implémentant la fonction de désinstallation
	// $callback: le nom de la fonction appelée lors de la désinstallation, ex. 'uninstall'
	/* Enregistre la fonction de désinstallation dans WordPress */
	register_uninstall_hook($file, array($object, $callback));
}