Come bloccare gli URL all'interno dei campi del modulo

Introduzione

Volete bloccare gli URL all'interno dei campi dei moduli, come quelli a riga singola e a paragrafo? La maggior parte dello spam arriva con bot che cercano di aggiungere link nel vostro modulo e, utilizzando un piccolo script PHP, potete aggiungere un ulteriore livello di protezione al vostro modulo, rifiutando qualsiasi invio di modulo che tenti di inserire un URL all'interno dei campi del modulo Testo a riga singola o Testo a capoverso. In questo tutorial, vi illustreremo ogni passo per impedire che gli URL siano inseriti in questi campi.

Creazione del modulo

Per il nostro esempio, creeremo un semplice modulo di contatto per i campi Nome, Email, Come ci hai conosciuto (testo a riga singola) e Commento (testo a paragrafo).

Se avete bisogno di aiuto per creare il vostro modulo, consultate questa documentazione.

iniziare creando il modulo e aggiungendo i campi

Aggiunta dello snippet di codice per bloccare gli URL

Ora è il momento di aggiungere lo snippet che bloccherà gli URL all'interno del modulo.

Se avete bisogno di aiuto per aggiungere gli snippet al vostro sito, consultate questo tutorial.

/*
 * 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 );

Questo snippet viene applicato automaticamente a tutti i moduli e impedisce a qualsiasi campo di testo normale o area di testo (come il Testo del paragrafo) di consentire l'inserimento di URL all'interno del campo.

bloccare gli url all'interno del modulo con questo script PHP

E questo è tutto! Volete bloccare anche le bestemmie in questi campi? Date un'occhiata al nostro articolo su Come bloccare l'invio di moduli contenenti bestemmie.

Riferimenti d'azione: