Cuando creamos un formulario, el campo de teléfono suele ser un dolor de cabeza. Primero por las extensiones de los países y regiones, luego la cantidad de dígitos que conforman un número telefónico en cada territorio nacional. Pero también porque cada persona lo escribe de la manera que más cómodo le quede:
- Con o sin espacios
- Con o sin el símbolo +
- Con doble 00
- Con el prefijo de país o directamente como si lo marcaran a modo local
- etc.
Si sabes de programación o tienes en tu equipo un desarrollador, lo solucionarás fácil. Pero si no conoces de programación ¿qué hacer?
El plugin Caldera Forms para formularios en WordPress te ayuda con esto.
Si estás leyendo este artículo es probable que conozcas el plugin y sabes de qué se trata.
Pero en caso de que aún no lo utilices ni te suene el nombre de este plugin de formularios para WordPress, te recomiendo leer este post donde hago una comparativa de Contact Form 7 y Caldera Forms. Dos de los plugins más utilizados.
Campo Número de Teléfono mejorado en Caldera Forms
El campo de Número de Teléfono mejorado es una buena opción para tus formularios, cuando necesitas solicitar esta información.
Si ya has utilizado el plugin sabrás que ofrece dos campos de teléfono.
Uno básico que sólo permite configurar el formato y cantidad de digitos. Por ej:
- 9999999999
- (999) 999 9999
- +99 99 999 9999
- o personalizado
Y también el campo mejorado, del cual hablamos en este artículo.
Cuando utilizas un campo de Número de Teléfono mejorado en Caldera Forms, muestra un desplegable con el listado de prefijos telefónicos de todos los países del mundo. Con banderitas y todo. Una chulada.
Así, al desplegar el listado se muestran también los nombres de los países junto a cada bandera y el prefijo nacional.
Aunque por defecto, el código de país que muestra para el usuario visitante es el de Estados Unidos y el plugin no ofrece una manera de modificar esto desde su interfaz de administración.
Cómo cambiar el prefijo por defecto del campo Número de Teléfono mejorado en Caldera Forms
Para lograr esto, podés usar el siguiente snippet, que vas a colocar en el archivo funcitions.php de tu child theme o bien con el plugin Code Snippet.
add_filter( 'caldera_forms_phone_js_options', function( $options){
//Use ISO_3166-1_alpha-2 formatted country code
$options[ 'initialCountry' ] = 'EC';
return $options;
});
Observa en el código que en ‘initialCountry’ (país inicial) está configurado EC, para que el prefijo telefónico a mostrar por defecto sea Ecuador.
Este código es el que deberás sustituir por el de tu país, en caso de que no sea Ecuador, obviamente.
Averigua el código de tu país
Es muy probable que sepas el código alfa-2 de tu país aunque este término te suene extraño, ya son las dos letras que identifican a los dominios de Internet de tu territorio.
Estos códigos forman parte de la normalización ISO 3166 que asigna los códigos para los nombres de los países.
Podés informarte más y ver un listado de todos los códigos del mundo en Wikipedia.
Pero para facilitarte el trabajo te dejo un listado de los códigos de los países de América que tienen el Español como idioma oficial o cooficial.
Listado de Código de Países de dos letras, en América
Copia el código de 2 letras de tu país para cambiar en el fragmento de código que insertarás en tu WordPress. Así el campo de Número de Teléfono mejorado de Caldera Forms mostrará por defecto ese prefijo telefónico.
- Argentina – AR
- Bolivia – BO
- Chile – CL
- Colombia – CO
- Costa Rica – CR
- Cuba – CU
- Ecuador – EC
- Guatemala – GT
- Honduras – HN
- México – MX
- Nicaragua – NI
- Panamá – PA
- Paraguay – PY
- Perú – PE
- Puerto Rico – PR
- República Dominicana – DO
- Trinidad y Tobago – TT
- Uruguay – UY
- Venezuela – VE
6 comentarios en “Cambiar Código de País por defecto en campo de Teléfono de Caldera Forms”
Excelente post.
Conoces una manera de solucionar esto con el formulario de Elementor Pro? Estoy buscando la manera de que aparezca el prefijo automático según el país donde esté la persona como lo hace WP Forms.
Hola Jheferson. Qué bueno te haya gustado el post. Buena pregunta la tuya. Hasta ahora no había tenido la necesidad de hacerlo. Me lo apunto para probarlo y postearlo.
como podría dejar el indicativo del país seleccionado fijo para que no se pueda borrar y seguido el usuario pueda escribir su numero de contacto
Hola Felipe. ¿Te referís a fijar sólo un país sin que se pueda seleccionar ningún otro? Es decir ¿que sólo haya una opción de país?
Gracias, me ayudó mucho ese pluging Code 🙂
Me alegro mucho que te haya resultado útil, María 🙂