est-il possible d'envelopper le code dans une fonction spéciale qui n'exécute que la première fois que le plugin est activé? p>
J'ai un code de base de données, je dois exécuter sur l'activation du plug-in, mais le code ne doit pas ne pas être exécuté après cela. P>
3 Réponses :
http://codex.wordpress.org/funt_reference/register_activation_hook P>
La fonction regrette_activation_hook (Introduit dans WordPress 2.0) enregistre une fonction de plug-in à exécuter Lorsque le plugin est activé. p> blockQuote>
Merci Dominic. J'apprécie l'aide.
Oui, c'est possible. Vous pouvez enregistrer un crochet d'activation du plugin qui ne peut être exécuté que lorsque le plugin est activé. J'ai dragué un ancien plugin que j'ai écrit pour un exemple de code:
Merci Zombat, et surtout pour l'exemple. Une question: est-il possible d'avoir un plugin de travail (avec code qui exécute tant que le plugin est activé) qui a également un crochet d'activation?
Pas tout à fait sûr de suivre. Tout ce que vous êtes à l'intérieur de la fonction que vous vous enregistrez comme un crochet d'activation sera exécuté chaque fois que l'action "Activer le plug-in" se produit dans le panneau d'administration WordPress. Vous pouvez avoir un tas d'autres code dans les classes de plug-in qui fera d'autres choses, mais ne comptez pas sur des crochets d'activation. Il peut simplement être utilisé normalement. Désolé si cela ne répond pas à votre question, je n'ai pas bien compris ce que vous demandez ...?
Je l'ai compris. J'ai été confus sur où placer l'init pour le plugin et où mettre le crochet d'activation.
N'oubliez pas non plus une fois que votre plugin est désactivé par vous-même / utilisateur, vous pouvez supprimer toutes les options des tables que vous avez stockées dans la base de données WP, j'ai écrit un petit message à ce sujet récemment parle de la fonction WP Regisk_Deactivation_Hook ().
<?php
register_deactivation_hook( __FILE__, âpluginUninstallâ );
function pluginUninstall() {
global $wpdb;
$thetable = $wpdb->prefix."your_table_name";
//Delete any options that's stored also?
//delete_option('wp_yourplugin_version');
$wpdb->query("DROP TABLE IF EXISTS $thetable");
}
?>