<html lang="pt-pt" dir="ltr"><head></head><body>### [Como fornecer validação adicional de campo de telefone](https://wpforms.com/developers/how-to-provide-additional-phone-field-validation/)

**Publicado:** 2 de fevereiro de 2021
**Autor:** Equipe Editorial

**Resumo:** Este tutorial mostrará como fornecer validação adicional de campo de telefone, como impedir que números gratuitos sejam inseridos no seu formulário. 

**Conteúdo:**

Gostaria de fornecer validação adicional de campo de telefone? Por exemplo, se você quiser impedir que os usuários insiram números gratuitos no seu campo **Telefone**, você pode facilmente conseguir isso com um pequeno trecho de PHP. Neste tutorial, detalharemos as etapas sobre como impedir que números gratuitos sejam inseridos no seu formulário.

## Criação do formulário

Para começar, você precisará criar seu formulário e adicionar seu campo **Telefone** ao seu formulário, bem como quaisquer campos adicionais de que precisará no seu formulário.

Se precisar de ajuda para criar seu formulário, [consulte esta documentação](https://wpforms.com/docs/creating-first-form/ "Como Criar Seu Primeiro Formulário").

![para fornecer validação adicional de campo de telefone, você primeiro precisará criar seu formulário.](https://wpforms.com/wp-content/uploads/2021/02/wpforms-additional-phone-validation.jpg)

## Configuração do formato do campo de telefone

Para fins desta documentação, impediremos qualquer número de telefone que comece com `8` ou `+8`. Dependendo do **Formato** que você está usando para o campo de formulário **Telefone**, dependerá do trecho de código que você precisará usar abaixo.

![Selecione o formato que deseja usar no seu campo de telefone](https://wpforms.com/wp-content/uploads/2021/02/wpforms-additional-phone-field-validation.jpg)

## Validação Adicional de Campo de Telefone

Agora é hora de adicionar o trecho de PHP de que você precisará. Existem dois trechos diferentes e isso depende de qual **Formato** foi definido para o campo **Telefone** quando você criou seu formulário.

Se precisar de ajuda para adicionar trechos ao seu site, [consulte este tutorial](https://wpforms.com/developers/how-to-add-custom-php-or-javascript-for-wpforms/ "Como Adicionar PHP ou JavaScript Personalizado para WPForms").

#### Formato de Telefone dos EUA

```

/**
 * Validação personalizada de campo de telefone no formato dos EUA ao enviar (rejeita prefixos definidos).
 *
 * @link  https://wpforms.com/developers/how-to-provide-additional-phone-field-validation/
 */

function wpf_dev_process_validate_phone($field_id, $field_submit, $form_data)
{
        // Verifica apenas o formato do campo de telefone dos EUA
	if ( 'us' === $form_data[ 'fields' ][$field_id][ 'format' ]) { 

		$stripped_phone = str_replace(array( '(', ')'), '', (string) $field_submit);

		$prefixes = [ '8', '+8' ];

		$regexp = implode( '|', $prefixes);

		if (preg_match( '/^[' . $regexp . ']/', $stripped_phone)) {
			wpforms()-&gt;process-&gt;errors[$form_data[ 'id' ]][$field_id] = esc_html__( 'O número não deve começar com "' . implode( '", "', $prefixes ) . '"', 'plugin-domain' );
		}
	}
}

add_action( 'wpforms_process_validate_phone', 'wpf_dev_process_validate_phone', 10, 3);
```

#### Formato de Telefone Inteligente e Internacional

```

/**
 * Validação personalizada de campo de smartphone e internacional ao enviar (rejeita prefixos definidos).
 *
 * @link  https://wpforms.com/developers/how-to-provide-additional-phone-field-validation/
 */

function wpf_dev_process_validate_phone( $field_id, $field_submit, $form_data ) {

   $prefixes = [ '8', '+8' ];

   $regexp = implode( '|', $prefixes );

   if ( preg_match( '/^[' . $regexp . ']/', (string) $field_submit ) ) {
      wpforms()-&gt;process-&gt;errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'O número não deve começar com "' . implode( '", "', $prefixes) . '"', 'plugin-domain' );
   }
}

add_action( 'wpforms_process_validate_phone', 'wpf_dev_process_validate_phone', 10, 3 );
```

Ambos os trechos examinarão o valor do campo **Telefone** quando o formulário for enviado e, se ele começar com o número **8** ou **+8**, o formulário não será enviado e uma mensagem de erro aparecerá.

![Ao fornecer uma validação adicional de campo de telefone, você pode impedir facilmente que números gratuitos sejam inseridos no seu formulário.](https://wpforms.com/wp-content/uploads/2020/06/wpforms-additional-phone-validation.jpg)

E é isso! Você adicionou com sucesso validação adicional para o seu campo de formulário **Telefone**. Você também gostaria de impedir que determinados e-mails sejam inseridos? Confira nosso tutorial sobre [Como Restringir Domínios de E-mail](https://wpforms.com/developers/how-to-restrict-email-domains/ "Como Restringir Domínios de E-mail").

## Filtro de Referência

[wpforms\_process\_validate\_phone](https://wpforms.com/developers/wpforms_process_validate_phone/ "Usando o filtro wpforms_process_validate_phone")

**Categorias:** Campos

**Tags:** PHP

---</body></html>