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

**Publicado em:** 17 de julho de 2020
**Autor:** Equipe Editorial

**Resumo:** A ação `wpforms_process_complete` é disparada no final do processamento (bem-sucedido) de uma entrada de formulário. 

**Conteúdo:**

## Descrição

A ação `wpforms_process_complete` é disparada no final do processamento (bem-sucedido) de uma entrada de formulário.

## Parâmetros

$fields*(array)* Valores/propriedades dos campos da entrada sanitizados.$entry*(array)* O global $\_POST original.$form\_data*(array)* Configurações/dados do formulário processados, preparados para uso posterior.$entry\_id*(int)* ID da entrada. Retornará 0 se o armazenamento de entrada estiver desativado ou usando WPForms Lite.## Fonte

`wpforms/includes/class-process.php`

## Mais Informações

O hook `wpforms_process_complete` é disparado no final do processamento do formulário. Ele só é disparado se a entrada for bem-sucedida e não contiver erros. O salvamento da entrada no banco de dados e o envio das notificações por e-mail são feitos antes da execução deste hook.

Uma escolha popular ao construir integrações de API personalizadas ou quando é necessário executar qualquer tipo de ação após o envio bem-sucedido de uma entrada (por exemplo, enviar uma notificação por e-mail personalizada, criar uma postagem ou conta de usuário, etc.).

Uma versão alternativa deste hook está disponível para limitar facilmente por ID de formulário, `wpforms_process_complete_{$form_id}`.

**Nota importante**: Se você estiver fazendo o processamento e precisar retornar um erro e impedir o processamento do formulário, use o hook [wpforms\_process](https://wpforms.com/developers/wpforms_process/ "A Ação wpforms_process") em vez disso.

## Exemplos

Para um exemplo, [veja a Integração de seu formulário de contato com serviços externos de Bill Erickson](https://www.billerickson.net/contact-form-integration/ "Integração de seu formulário de contato com serviços externos").

Lembre-se apenas de alterar o ID do seu formulário de `5` para o ID do formulário que você está visando.

```

/**
 * Isso será disparado no final de uma entrada de formulário (bem-sucedida).
 *
 * @link  https://wpforms.com/developers/wpforms_process_complete/
 *
 * @param array  $fields    Valores/propriedades dos campos da entrada sanitizados.
 * @param array  $entry     O global $_POST original.
 * @param array  $form_data Dados e configurações do formulário.
 * @param int    $entry_id  ID da entrada. Retornará 0 se o armazenamento de entrada estiver desativado ou usando WPForms Lite.
 */

function wpf_dev_process_complete( $fields, $entry, $form_data, $entry_id ) {
     
    // Opcional, você pode limitar a formulários específicos. Abaixo, restringimos a saída para
    // o formulário nº 5.
    if ( absint( $form_data[ 'id' ] ) !== 5 ) {
        return;
    }
	
	// Obtém o objeto de entrada completo
	$entry = wpforms()-&gt;entry-&gt;get( $entry_id );

	// Os campos estão em JSON, então decodificamos para um array
	$entry_fields = json_decode( $entry-&gt;fields, true );

	// Verifica se o usuário selecionou 'Sim' para callback
	if($entry_fields[6][ 'value' ] === 'Yes') {
		// Define o campo oculto como 'Precisa de Callback' para filtrar as entradas
		$entry_fields[7][ 'value' ] = 'Needs Callback';
	}

	// Converte de volta para json
	$entry_fields = json_encode( $entry_fields );

	// Salva as alterações
	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 );

```

## Artigos de Referência

[Como adicionar um ano à data de entrada do WPForms](https://wpforms.com/developers/how-to-add-a-year-to-the-wpforms-entry-date/ "Como adicionar um ano à data de entrada do WPForms")

**Categorias:** Hooks de Ação

**Tags:** Processamento de Entrada, PHP

---</body></html>