Obtenez le meilleur plugin WordPress Backup
& Migration dès aujourd'hui
Obtenir Duplicator maintenant

Documentation sur le duplicateur

Documentation, matériaux de référence et tutoriels pour Duplicator

Duplicator Pro Plugin Hooks

Le plugin Duplicator Pro permet aux développeurs d'accéder à des événements spécifiques lors de ses cycles d'exécution. Voici un guide simple des crochets disponibles, qui sont supportés dans Duplicator Pro version 4.5.2 et plus.

Crochets

Voici les crochets que vous pouvez utiliser avec Duplicator Pro :

CrochetDescription
duplicator_pro_build_before_startDéclenché juste avant le début du processus de construction pour les constructions manuelles et programmées.
duplicator_pro_build_completedDéclenché à la toute fin du processus de construction pour les constructions manuelles et programmées.
duplicator_pro_build_failDéclenché chaque fois qu'une construction échoue, tant pour les constructions manuelles que programmées.
duplicator_pro_first_login_after_installDéclenché après une installation réussie et lorsque l'utilisateur accède pour la première fois à l'administration de WordPress.

Mise en place

Les crochets peuvent être installés à différents endroits. Le moyen le plus rapide de commencer est de les ajouter au fichier functions.php de votre thème. Vous pouvez également ajouter des hooks à partir de plugins personnalisés ou commerciaux. Les hooks de Duplicator Pro utilisent l'appel add_action de WordPress, vous pouvez donc les utiliser n'importe où dans la pile PHP de WordPress.

Démarrage rapide

Pour configurer les crochets et vérifier qu'ils fonctionnent avec votre site WordPress, suivez les étapes suivantes :

  1. Ouvrez le fichier functions.php de votre thème actif.
  2. Ajoutez le code suivant au bas du fichier :
// Before build starts function callback function __duplicator_pro_build_before_start_test_function() { $var = "------------------------------------------------"; $var .= "Testing: duplicator_pro_build_before_start hook"; $var .= "------------------------------------------------"; error_log(print_r($var, true)); } // Build completes function callback function __duplicator_pro_build_completed_test_function() { $var = "------------------------------------------------"; $var .= "Testing: duplicator_pro_build_before_start hook"; $var .= "------------------------------------------------"; error_log(print_r($var, true)); } // Add Actions add_action('duplicator_pro_build_before_start', '__duplicator_pro_build_before_start_test_function'); add_action('duplicator_pro_build_completed', '__duplicator_pro_build_completed_test_function');

3. Créer une sauvegarde pour déclencher les crochets de construction.

4. Ouvrez votre fichier d'erreur ou de débogage PHP pour voir les résultats des fonctions.

Échantillons

Vous trouverez ci-dessous des exemples de codes pour différents crochets. Vous pouvez adapter ces exemples à vos besoins.

Exemple 1 : Nettoyer les données transitoires avant de créer une sauvegarde.

Cet exemple montre comment nettoyer les données transitoires avant de créer une sauvegarde.

function deleteAllTransientsOnPackageCreation() { global $wpdb; $sql = 'DELETE FROM ' . $wpdb->options . ' WHERE option_name LIKE "_transient_%"'; $wpdb->query($sql); } add_action('duplicator_pro_build_before_start', 'deleteAllTransientsOnPackageCreation');

Exemple 2 : Enregistrer l'état de la construction dans une API externe (par exemple, Slack)

Cet exemple montre comment enregistrer l'état de la construction dans une API externe comme Slack.

function sendSlackMessage($msg) { // See Slack Webhook API (https://api.slack.com/messaging/webhooks) $slackWebhook = 'https://hooks.slack.com/services/[XXX]/[YYY]/[ZZZ]'; $postfields = array('payload' => json_encode(array('text' => $msg))); $ch = curl_init($slackWebhook); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields); curl_exec($ch); curl_close($ch); } function sendSlackStartMessage(DUP_PRO_Package $package) { sendSlackMessage("DUPLICATOR BUILD START [" . date("Y-m-d H:i:s") . "] Package name: " . $package->Name); } function sendSlackFailMessage(DUP_PRO_Package $package) { sendSlackMessage("DUPLICATOR BUILD FAIL Package name: " . $package->Name); } function sendSlackCompleteMessage(DUP_PRO_Package $package) { sendSlackMessage("DUPLICATOR BUILD COMPLETE [" . date("Y-m-d H:i:s") . "] Package name: " . $package->Name); } add_action('duplicator_pro_build_before_start', 'sendSlackStartMessage'); add_action('duplicator_pro_build_fail', 'sendSlackFailMessage'); add_action('duplicator_pro_build_completed', 'sendSlackCompleteMessage');

Ces exemples démontrent la flexibilité et la puissance des crochets de Duplicator Pro. Vous pouvez les adapter à vos besoins spécifiques et les intégrer à d'autres systèmes ou services.

Cet article a-t-il été utile ?

Articles connexes