¡Atención!

Este artículo contiene código JavaScript y está destinado a desarrolladores. Ofrecemos este código como cortesía, pero no proporcionamos soporte para personalizaciones de código o desarrollo de terceros.

Para obtener ayuda adicional, consulta el tutorial de WPBeginner sobre cómo añadir código personalizado.

Descartar

Restringir la autocompletación de direcciones a un país específico

Descripción general

¿Te gustaría restringir la funcionalidad de Autocompletado de Direcciones a un país específico? Cuando creas tus propios esquemas de direcciones únicos para un país deseado, también querrás asegurarte de que el autocompletado de direcciones solo busque en ese país.

En este artículo, te mostraremos cómo lograr esto usando JavaScript.


Configuración

Para fines de esta documentación, ya hemos creado un Esquema de direcciones único para Canadá siguiendo los pasos de este tutorial.

Una vez que hayamos agregado nuestro esquema de direcciones adicional, habremos seleccionado el Esquema para nuestro campo de Dirección dentro del constructor de formularios.

Selección de tu esquema de direcciones

Además de esto, también hemos activado Habilitar Autocompletado de Direcciones desde la pestaña Avanzado del campo de Dirección.

Habilitar autocompletado de direcciones

Añadir el fragmento

Una vez que hayas configurado y guardado tu formulario, es hora de agregar el fragmento. Si necesitas ayuda para agregar fragmentos a tu sitio, por favor revisa este tutorial.

/**
 * Restrict address autocomplete to a specific country
 *
 * @link https://wpforms.com/developers/how-to-restrict-address-autocomplete-to-a-specific-country/
 */
function wpf_dev_geo_autocomplete_default_country() {
    ?>
    <script type="text/javascript">
        var formID = '1000';        // Change form ID
        var addressFieldID = '25';  // Change address field ID
        var country = 'ca';         // Change country code
        var settingsKey = 'wpforms_' + formID + '_field_' + addressFieldID;
        if ( typeof wpforms_geolocation_settings !== 'undefined' ) {
            if ( ! wpforms_geolocation_settings.autocompleteSettings ) {
                wpforms_geolocation_settings.autocompleteSettings = {};
            }
            if ( ! wpforms_geolocation_settings.autocompleteSettings[ settingsKey ] ) {
                wpforms_geolocation_settings.autocompleteSettings[ settingsKey ] = {};
            }
            wpforms_geolocation_settings.autocompleteSettings[ settingsKey ].strict = [ country ];
        }
    </script>
    <?php
}
add_action( 'wpforms_wp_footer_end', 'wpf_dev_geo_autocomplete_default_country', 30 );

Hay tres elementos que necesitas actualizar en el fragmento para que coincidan con tus requisitos específicos.

  1. var formID = 1000;
  2. var addressFieldID = 25;
  3. ‘country’: [ ‘ca’ ],

Estos deberán actualizarse para que coincidan con tu propio ID de formulario, ID de campo y el país en el que deseas que el Autocompletado de Direcciones solo busque.

Para encontrar los IDs de tu formulario y campo, por favor revisa este tutorial.

Para obtener ayuda para encontrar el código de país de 2 letras para tu país específico, por favor revisa esta documentación.

¡Eso es todo! Ahora, cuando se escriba una dirección, la función de autocompletado solo buscará dentro del país que especificaste.

¿Te gustaría también restringir el campo de Teléfono a un país específico? Echa un vistazo a nuestro artículo sobre Cómo Restringir Países Dentro de Campos de Teléfono Inteligentes.

Referencia de acción: wpforms_wp_footer_end