Resumen de IA
Descripción
La acción wpforms_process_entry_save se dispara cuando una entrada se guarda en la base de datos.
Parámetros
- $fields
- (array) Valores/propiedades de los campos de entrada saneados.
- $entry
- (array) Global $_POST original.
- $id_formulario
- (int) ID del formulario.
- $form_data
- (array) Configuración/datos del formulario procesados, preparados para ser utilizados más adelante.
Origen
wpforms/includes/class-process.php
Más Información
La acción se dispara después de que la entrada se ha procesado correctamente al guardarse en la base de datos. El evento de confirmación y el correo electrónico de notificación se activan después de que este hook se haya ejecutado.
A continuación se muestra el contexto en el que se ejecuta el hook wpforms_process_entry_save.
Este hook también se utiliza en wpforms/pro/wpforms-pro.php, que carga características y funcionalidades específicas de la versión de pago del plugin.
/**
* @param array $fields
* @param array $entry
* @param int $form_id
* @param array $form_data
*
* @return int
*/
public function entry_save( $fields, $entry, $form_id, $form_data = '' ) {
do_action( 'wpforms_process_entry_save', $fields, $entry, $form_id, $form_data );
return $this->entry_id;
}
Ejemplos
Podrías usar fácilmente esta acción para activar algo cuando las entradas se guarden en la base de datos.
Solo recuerda cambiar el ID del formulario de 5 para que coincida con el ID específico del formulario en el que deseas ejecutar tu código. Eliminar esta comprobación ejecutaría el código para todos los formularios.
/**
* Action that fires when an entry is saved to the database.
*
* @link https://wpforms.com/developers/wpforms_process_entry_save/
*
* @param array $fields Sanitized entry field. values/properties.
* @param array $entry Original $_POST global.
* @param int $form_id Form ID.
* @param array $form_data Form data and settings.
*/
function wpf_dev_process_entry_save( $fields, $entry, $form_id, $form_data ) {
// Only run on my form with ID = 5
if ( absint( $form_data[ 'id' ] ) !== 5 ) {
return $fields;
}
// Example checking for the Yes value of a checkbox field (ID 6) and if yes, we'll then run our code
if($fields[6][ 'value' ] === 'Yes') {
// run some code here
}
}
add_action( 'wpforms_process_entry_save', 'wpf_dev_process_entry_save', 10, 4 );
Si necesitas ayuda sobre dónde encontrar los IDs de tus formularios y campos, por favor revisa este tutorial.
Artículos de Referencia
Cómo Sobrescribir Entradas de Usuarios que Ya Han Enviado un Formulario