Atenção!

Este artigo contém código JavaScript e é destinado a desenvolvedores. Oferecemos esse código como cortesia, mas não fornecemos suporte para personalizações de código ou desenvolvimento de terceiros.

Para obter orientação adicional, consulte o tutorial do WPBeginner sobre como adicionar código personalizado.

Dispensar

Restringir o preenchimento automático de endereços a um país específico

Visão geral

Você gostaria de restringir a funcionalidade de preenchimento automático de endereços a um país específico? Quando você cria seus próprios esquemas de endereços exclusivos para um país desejado, também deseja garantir que o preenchimento automático de endereços pesquise apenas nesse país.

Neste artigo, mostraremos como fazer isso usando JavaScript.


Configuração

Para fins desta documentação, já criamos um esquema de endereços exclusivo para o Canadá seguindo as etapas deste tutorial.

Depois de adicionarmos nosso esquema de endereço adicional, selecionamos o esquema para o campo Address (Endereço) no criador de formulários.

Seleção de seu esquema de endereços

Além disso, também ativamos a opção Enable Address Autocomplete (Ativar preenchimento automático de endereço ) na guia Advanced (Avançado ) do campo Address (Endereço).

Ativação do preenchimento automático de endereços

Adicionando o snippet

Depois de configurar e salvar o formulário, é hora de adicionar o snippet. Se precisar de ajuda para adicionar snippets ao seu site, consulte 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 );

Há três itens que precisam ser atualizados no snippet para atender aos seus requisitos específicos.

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

Eles precisarão ser atualizados para corresponder ao seu próprio ID de formulário, ID de campo e o país no qual você deseja que o preenchimento automático de endereço pesquise apenas.

Para encontrar seus IDs de formulário e campo, consulte este tutorial.

Para obter ajuda para encontrar o código de país de duas letras para seu país específico, consulte esta documentação.

É isso aí! Agora, quando um endereço for digitado, o recurso de preenchimento automático só pesquisará dentro do país que você especificou.

Você também gostaria de restringir o campo Phone a um país específico? Dê uma olhada em nosso artigo sobre Como restringir países dentro dos campos de formulário do Smart Phone.

Referência da ação: wpforms_wp_footer_end