Ottenete oggi il miglior plugin per il backup e la migrazione di WordPress
Ottenere Duplicator ora

Documentazione del Duplicatore

Documentazione, materiali di riferimento ed esercitazioni per Duplicator

Ganci del plugin Duplicator Pro

Il plugin Duplicator Pro consente agli sviluppatori di accedere a eventi specifici durante i suoi cicli di esecuzione. Ecco una semplice guida ai ganci disponibili, supportati da Duplicator Pro versione 4.5.2 e successive.

Ganci

Ecco i ganci che si possono utilizzare con Duplicator Pro:

GancioDescrizione
duplicator_pro_build_before_startViene attivato prima dell'avvio del processo di creazione, sia per le creazioni manuali che per quelle pianificate.
duplicatore_pro_costruzione_completataAttivato alla fine del processo di creazione sia per le build manuali che per quelle programmate.
duplicatore_pro_build_failSi attiva ogni volta che una compilazione fallisce, sia per le compilazioni manuali che per quelle programmate.
duplicator_pro_first_login_after_installSi attiva dopo che l'installazione è stata eseguita con successo e l'utente accede per la prima volta all'amministrazione di WordPress.

Impostazione

Gli hook possono essere impostati in diversi punti. Il modo più rapido per iniziare è aggiungerli al file functions.php del tema. È anche possibile aggiungere ganci da plugin personalizzati o commerciali. Gli hook di Duplicator Pro utilizzano la chiamata add_action di WordPress, quindi possono essere utilizzati in qualsiasi punto dello stack PHP di WordPress.

Avvio rapido

Per impostare i ganci e verificare che funzionino con il vostro sito WordPress, seguite questi passaggi:

  1. Aprire il file functions.php del tema attivo.
  2. Aggiungete il seguente codice in fondo al file:
// 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. Creare un backup per attivare i ganci di compilazione.

4. Aprite il file di log degli errori o di debug di PHP per vedere i risultati delle funzioni.

Campioni

Di seguito sono riportati alcuni codici di esempio per vari ganci. È possibile personalizzare questi esempi per adattarli alle proprie esigenze.

Esempio 1: pulire i dati transitori prima di creare un backup.

Questo esempio mostra come pulire i dati transitori prima di creare un backup.

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');

Esempio 2: Registrare lo stato di costruzione a un'API esterna (ad esempio, Slack)

Questo esempio mostra come registrare lo stato della costruzione in un'API esterna, come 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');

Questi esempi dimostrano la flessibilità e la potenza dei ganci di Duplicator Pro. È possibile personalizzarli in base alle proprie esigenze specifiche e integrarli con altri sistemi o servizi.

Questo articolo è stato utile?

Articoli correlati