Cómo validar el campo nombre en Contact Form 7 para que solo acepte texto

17 jul 2017, 09:45:44
Vistas: 17.6K
Votos: -1

Estoy usando el plugin Contact Form 7, donde he creado un campo name como Nombre.

El campo name está aceptando tanto texto como números. Pero mi requerimiento es que el campo name no debe comenzar con números, ¿cómo puedo hacer que el campo nombre solo acepte texto y no números?

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

He buscado en Google y visitado el soporte de Contact Form 7, pero no he podido resolverlo.

2
Comentarios

¿Ya leíste el manual del desarrollador sobre validación personalizada? Además, si mi nombre es algo como "kero el 3ro" ¿no podré enviar tu formulario (porque hay un número en él)?

kero kero
17 jul 2017 10:08:33

mi requisito es, el campo Nombre no debe aceptar nombres que comiencen con número, no en medio o después del primero.. @kero

Rajendra Rajendra
17 jul 2017 10:29:56
Todas las respuestas a la pregunta 1
0

Según la documentación, debes crear un filtro personalizado para darle soporte - puedes hacerlo así:

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

function custom_text_validation_filter( $result, $tag ) {
    if ( 'your-name' == $tag->name ) {
        // coincide con cualquier palabra utf que no empiece con número
        $re = '/^[^\p{N}][\p{L}]*/i';

        if (!preg_match($re, $_POST['your-name'], $matches)) {
            $result->invalidate($tag, "¡Este no es un nombre válido!" );
        }
    }

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