<html lang="es-es" dir="ltr"><head></head><body>### [wpforms_process_complete](https://wpforms.com/developers/wpforms_process_complete/)

**Publicado:** 17 de julio de 2020
**Autor:** Equipo Editorial

**Extracto:** La acción `wpforms_process_complete` se dispara al final del procesamiento (exitoso) de una entrada del formulario. 

**Contenido:**

## Descripción

La acción `wpforms_process_complete` se dispara al final del procesamiento (exitoso) de una entrada del formulario.

## Parámetros

$fields*(array)* Valores/propiedades de los campos de entrada saneados.$entry*(array)* Global `$_POST` original.$form\_data*(array)* Configuración/datos del formulario procesados, preparados para su uso posterior.$entry\_id*(int)* ID de la entrada. Devolverá 0 si el almacenamiento de entradas está deshabilitado o se está utilizando WPForms Lite.## Fuente

`wpforms/includes/class-process.php`

## Más Información

El hook `wpforms_process_complete` se dispara al final del procesamiento del formulario. Solo se dispara si la entrada fue exitosa y no contenía errores. El guardado de la entrada en la base de datos y el envío de las notificaciones por correo electrónico se realizan antes de que se ejecute este hook.

Una opción popular al crear integraciones personalizadas de API o al necesitar realizar cualquier tipo de acción después de que una entrada se envíe con éxito (por ejemplo, enviar una notificación por correo electrónico personalizada, crear una publicación o una cuenta de usuario, etc.).

Hay una versión alternativa de este hook disponible para limitar fácilmente por ID de formulario: `wpforms_process_complete_{$form_id}`.

**Nota importante**: Si estás realizando un procesamiento y necesitas poder devolver un error y evitar el procesamiento del formulario, utiliza en su lugar el hook [wpforms\_process](https://wpforms.com/developers/wpforms_process/ "La acción wpforms_process").

## Ejemplos

Como ejemplo, [consulta la integración de tu formulario de contacto con servicios externos de Bill Erickson](https://www.billerickson.net/contact-form-integration/ "Integración de tu formulario de contacto con servicios externos").

Solo recuerda cambiar el ID de tu formulario de `5` al ID de formulario que estás apuntando.

```

/**
 * Esto se disparará al final de una entrada de formulario (exitosa).
 *
 * @link  https://wpforms.com/developers/wpforms_process_complete/
 *
 * @param array  $fields    Valores/propiedades de los campos de entrada saneados.
 * @param array  $entry     Global $_POST original.
 * @param array  $form_data Datos y configuración del formulario.
 * @param int    $entry_id  ID de la entrada. Devolverá 0 si el almacenamiento de entradas está deshabilitado o se está utilizando WPForms Lite.
 */

function wpf_dev_process_complete( $fields, $entry, $form_data, $entry_id ) {
     
    // Opcional, puedes limitar a formularios específicos. A continuación, restringimos la salida al
    // formulario #5.
    if ( absint( $form_data[ 'id' ] ) !== 5 ) {
        return;
    }
	
	// Obtener el objeto de entrada completo
	$entry = wpforms()-&gt;entry-&gt;get( $entry_id );

	// Los campos están en JSON, así que los decodificamos a un array
	$entry_fields = json_decode( $entry-&gt;fields, true );

	// Comprobar si el usuario seleccionó 'Sí' para la devolución de llamada
	if($entry_fields[6][ 'value' ] === 'Yes') {
		// Establecer el campo oculto a 'Needs Callback' para filtrar las entradas
		$entry_fields[7][ 'value' ] = 'Needs Callback';
	}

	// Convertir de nuevo a json
	$entry_fields = json_encode( $entry_fields );

	// Guardar cambios
	wpforms()-&gt;entry-&gt;update( $entry_id, array( 'fields' =&gt; $entry_fields ), '', '', array( 'cap' =&gt; false ) );

}
add_action( 'wpforms_process_complete', 'wpf_dev_process_complete', 10, 4 );

```

## Artículos de Referencia

[Cómo añadir un año a la fecha de entrada de WPForms](https://wpforms.com/developers/how-to-add-a-year-to-the-wpforms-entry-date/ "Cómo añadir un año a la fecha de entrada de WPForms")

**Categorías:** Hooks de Acción

**Etiquetas:** Procesamiento de Entradas, PHP

---</body></html>