Atenção!

Este artigo contém código JavaScript e destina-se a programadores. Oferecemos este código como cortesia, mas não fornecemos suporte para personalizações de código ou desenvolvimento de terceiros.

Para obter orientações adicionais, consulte o tutorial do WPBeginner sobre como adicionar código personalizado.

Recusar

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

Visão geral

Gostaria de restringir a funcionalidade de preenchimento automático de endereços a um país específico? Quando cria os seus próprios esquemas de endereços exclusivos para um país pretendido, também quer certificar-se de que o preenchimento automático de endereços só pesquisa nesse país.

Neste artigo, vamos mostrar-lhe como conseguir isto utilizando JavaScript.


Configuração

Para efeitos desta documentação, já criámos um esquema de endereços único para o Canadá, seguindo os passos deste tutorial.

Depois de adicionarmos o nosso esquema de endereços adicional, selecionámos o Esquema para o nosso campo Endereço no criador de formulários.

Selecionar o seu esquema de endereços

Além disso, também activámos a opção Ativar o preenchimento automático de endereços no separador Avançadas do campo Endereço.

Ativar o preenchimento automático de endereços

Adicionar o snippet

Depois de configurar e salvar seu 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 tem de atualizar no snippet para corresponder aos seus requisitos específicos.

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

Estes terão de ser actualizados para corresponderem ao seu próprio ID de formulário, ID de campo e ao país em que pretende que o preenchimento automático de endereços pesquise apenas.

Para encontrar os IDs dos seus formulários e campos, consulte este tutorial.

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

É isso mesmo! Agora, quando for introduzido um endereço, a funcionalidade de preenchimento automático só procurará no país que especificou.

Também gostaria de restringir o campo Telefone a um país específico? Consulte o 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