Come validare il campo nome in Contact Form 7?

17 lug 2017, 09:45:44
Visualizzazioni: 17.6K
Voti: -1

Sto utilizzando il plugin contact-form-7, dove ho creato il campo name come Nome.

Attualmente il campo name accetta sia testo che numeri. Ma la mia necessità è che il campo name non debba iniziare con numeri, come posso fare per accettare solo testo e non numeri?

[text* your-name placeholder "Nome Completo"]

Ho cercato su Google e visitato anche il supporto di contact form 7, ma non sono riuscito a risolvere.

2
Commenti

Hai già letto il manuale per sviluppatori sulla validazione personalizzata? Inoltre, se il mio nome è qualcosa come "kero il 3°", non sarò in grado di inviare il tuo modulo (perché c'è un numero in esso)?

kero kero
17 lug 2017 10:08:33

La mia esigenza è che il campo Nome non dovrebbe accettare nomi che iniziano con un numero, non nel mezzo o dopo il primo.. @kero

Rajendra Rajendra
17 lug 2017 10:29:56
Tutte le risposte alla domanda 1
0

Secondo la documentazione devi creare un filtro personalizzato per supportarlo - puoi farlo in questo modo:

add_filter( 'wpcf7_validate_text*', 'custom_text_validation_filter', 20, 2 );

function custom_text_validation_filter( $result, $tag ) {
    if ( 'your-name' == $tag->name ) {
        // corrisponde a qualsiasi parola utf con la prima che non inizia con un numero
        $re = '/^[^\p{N}][\p{L}]*/i';

        if (!preg_match($re, $_POST['your-name'], $matches)) {
            $result->invalidate($tag, "Questo non è un nome valido!" );
        }
    }

    return $result;
}
17 lug 2017 10:10:18