Resumo de IA
Gostaria de bloquear submissões do seu formulário que contenham palavrões? Pode facilmente criar uma lista de palavras impróprias que irá impedir qualquer submissão de formulário se forem encontradas no seu campo Texto de Parágrafo ou num campo Texto de Linha Única utilizando um pequeno trecho de código. Neste tutorial, vamos guiá-lo através dos passos sobre como conseguir isto com PHP.
Criar o seu formulário
Primeiro, terá de criar um novo formulário e adicionar um campo Texto de Parágrafo ou Texto de Linha Única.
Se precisar de ajuda para criar um formulário, consulte esta documentação.

Bloquear submissões que contenham palavrões
Em seguida, crie uma lista de palavras que deseja adicionar ao seu filtro de palavrões. Assim que tiver identificado as palavras que deseja bloquear, terá de adicionar um destes trechos ao seu site. Se precisar de ajuda para adicionar trechos ao seu site, consulte esta documentação.
Adicionará cada palavra à sua $blocked_words separada por uma vírgula.
Campo de Formulário de Texto de Parágrafo
/**
* Prevent profanity words from Paragraph Text form fields.
*
* @link https://wpforms.com/developers/how-to-block-form-submissions-containing-profanity/
*/
function wpf_dev_profanity_filter_paragraph( $field_id, $field_submit, $form_data ) {
// Create your list of profanity words separated by commas
$blocked_words = array(
'badword1',
'badword2'
);
foreach( $blocked_words as $word ) {
if(strpos($field_submit, $word) !== FALSE ) {
wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No profanity allowed.', 'plugin-domain' );
return;
}
}
}
add_action( 'wpforms_process_validate_textarea', 'wpf_dev_profanity_filter_paragraph', 10, 3 );

Campo de Formulário de Texto de Linha Única
/**
* Prevent profanity words from Single Line Text form fields.
*
* @link https://wpforms.com/developers/how-to-block-form-submissions-containing-profanity/
*/
function wpf_dev_profanity_filter_single_text( $field_id, $field_submit, $form_data ) {
// Create your list of profanity words separated by commas
$blocked_words = array(
'badword1',
'badword2'
);
foreach( $blocked_words as $word ) {
if(strpos($field_submit, $word) !== FALSE ) {
wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No profanity allowed.', 'plugin-domain' );
return;
}
}
}
add_action( 'wpforms_process_validate_text', 'wpf_dev_profanity_filter_single_text', 10, 3 );
Campo de Formulário de Texto Rico
/**
* Prevent profanity words from Rich Text form fields.
*
* @link https://wpforms.com/developers/how-to-block-form-submissions-containing-profanity/
*/
function wpf_dev_profanity_filter_rich_text( $field_id, $field_submit, $form_data ) {
// Create your list of profanity words separated by commas
$blocked_words = array(
'badword1',
'badword2'
);
foreach( $blocked_words as $word ) {
if(strpos($field_submit, $word) !== FALSE ) {
wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No profanity allowed.', 'plugin-domain' );
return;
}
}
}
add_action( 'wpforms_process_validate_richtext', 'wpf_dev_profanity_filter_rich_text', 10, 3 );
E é tudo! Criou e implementou agora um filtro de palavrões para os seus campos de formulário Linha Única e Texto de Parágrafo. Gostaria de bloquear URLs de serem inseridos no seu formulário? Veja o nosso tutorial sobre Como Bloquear URLs Dentro dos Campos do Formulário.