Comment bloquer les URL à l'intérieur des champs de formulaire

Introduction

Souhaitez-vous bloquer les URL à l'intérieur des champs de formulaire tels que les champs de texte d 'une seule ligne et les champs de texte d'un paragraphe? En utilisant un petit script PHP, vous pouvez ajouter une couche supplémentaire de protection à votre formulaire en rejetant toute soumission de formulaire qui tente d'arriver avec une URL listée à l'intérieur de vos champs de texte à ligne unique ou de texte à paragraphe. Dans ce tutoriel, nous allons vous guider à travers chaque étape pour empêcher les URLs d'être placées dans ces champs.

Création du formulaire

Dans notre exemple, nous allons créer un formulaire de contact simple pour les champs Nom, Courriel, Comment avez-vous entendu parler de nous (texte d'une ligne) et Commentaire (texte d'un paragraphe).

Si vous avez besoin d'aide pour créer votre formulaire, veuillez consulter cette documentation.

commencez par créer votre formulaire et ajoutez vos champs

Ajout de l'extrait de code pour bloquer les URL

Il est maintenant temps d'ajouter le snippet qui bloquera les URL à l'intérieur du formulaire.

Si vous avez besoin d'aide pour ajouter des snippets à votre site, veuillez consulter ce tutoriel.

/*
 * Block URLs from inside form on Single Line Text and Paragraph Text form fields
 *
 * @link https://wpforms.com/developers/how-to-block-urls-inside-the-form-fields/
*/
 
function wpf_dev_check_for_urls( $field_id, $field_submit, $form_data ) {

	if( strpos($field_submit, 'http') !== false || strpos($field_submit, 'www.') !== false ) {
		wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No URLs allowed.', 'wpforms' );
		return;
	} 
	
}
  
add_action( 'wpforms_process_validate_textarea', 'wpf_dev_check_for_urls', 10, 3 );
add_action( 'wpforms_process_validate_text', 'wpf_dev_check_for_urls', 10, 3 );

Ce snippet est automatiquement appliqué à tous les formulaires et empêche tout champ de texte normal ou de zone de texte (tel que le texte du paragraphe) de permettre la saisie d'URL à l'intérieur du champ.

bloquer les urls à l'intérieur du formulaire avec ce script PHP

Et c'est tout ! Souhaitez-vous également bloquer les grossièretés dans ces champs ? Consultez notre article sur la façon de bloquer les soumissions de formulaires contenant des injures.

Références d'action :