Obtenga hoy mismo el mejor plugin de copia de seguridad y migración de WordPress
Obtenga Duplicator ahora

Documentación del duplicador

Documentación, materiales de referencia y tutoriales para Duplicator

Ganchos del plugin Duplicator Pro

El plugin Duplicator Pro permite a los desarrolladores acceder a eventos específicos durante sus ciclos de ejecución. He aquí una guía sencilla de los ganchos disponibles, que son compatibles con Duplicator Pro versión 4.5.2 y superiores.

Ganchos

Estos son los ganchos que puede utilizar con Duplicator Pro:

GanchoDescripción
duplicator_pro_build_before_startSe activa justo antes de que comience el proceso de compilación, tanto para las compilaciones manuales como para las programadas.
duplicator_pro_build_completedSe activa al final del proceso de construcción, tanto para construcciones manuales como programadas.
duplicator_pro_build_failSe activa cuando falla una compilación, tanto manual como programada.
duplicator_pro_first_login_after_installSe activa después de que una instalación se haya ejecutado correctamente y el usuario acceda al administrador de WordPress por primera vez.

Configurar

Los ganchos se pueden configurar en diferentes lugares. La forma más rápida de empezar es añadiéndolos al archivo functions.php de tu tema. También puedes añadir hooks desde plugins personalizados o comerciales. Los hooks de Duplicator Pro usan la llamada add_action de WordPress, por lo que puede usarlos en cualquier parte de la pila PHP de WordPress.

Inicio rápido

Para configurar los hooks y validar que funcionan con tu sitio WordPress, sigue estos pasos:

  1. Abra el archivo functions.php de su tema activo.
  2. Añade el siguiente código al final del archivo:
// 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. Cree una copia de seguridad para activar los ganchos de compilación.

4. Abra su archivo de registro de errores o depuración de PHP para ver los resultados de las funciones.

Muestras

A continuación se muestran algunos códigos de ejemplo para varios ganchos. Puede personalizar estos ejemplos para adaptarlos a sus necesidades.

Ejemplo 1: Limpie los datos transitorios antes de crear una copia de seguridad.

Este ejemplo muestra cómo limpiar los datos transitorios antes de crear una copia de seguridad.

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

Ejemplo 2: Registrar el estado de la compilación en una API externa (por ejemplo, Slack)

Este ejemplo muestra cómo registrar el estado de construcción en una API externa como 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');

Estas muestras demuestran la flexibilidad y potencia de los ganchos de Duplicator Pro. Puede personalizarlos para adaptarlos a sus necesidades específicas e integrarlos con otros sistemas o servicios.

¿Le ha resultado útil este artículo?

Artículos relacionados