Après avoir développé des plugins pour moi, certains d’entre eux sont prêts à être publiés. Pour tous, j'ai écrit les fonctions de désactivation, qui suppriment les options définies, la base de données, etc. après elles-mêmes. Mais j'ai des doutes sur la raison, par exemple, que se passe-t-il s'il ne s'agit que d'une inactivation temporaire?
Que pensez-vous, un processus a-t-il besoin d'un crochet de nettoyage pour la désactivation ou non?
Vous ne devriez pas nettoyer la base de données sur le hook deactivation
. Comme @Darhazer l'a dit, utilisez le hook uninstall
ou créez un uninstall.php
dans le dossier du plugin.
Ce que vous pouvez faire est de créer une page de paramètres d'exportation, que l'utilisateur peut utiliser pour enregistrer/sauvegarder ses données. Vous pouvez appeler cette page avant la désactivation, de sorte que l'utilisateur sera invité à enregistrer les données si vous souhaitez vraiment nettoyer la base de données à la désactivation.
Utilisez le crochet de désinstallation pour supprimer tous les paramètres. Lors de la désactivation, vous pouvez déplacer temporairement certaines données insérées dans le plug-in, telles que des éléments de menu, etc., tout en maintenant les paramètres du plug-in actifs.