Límite de autocompletado de Google Places para el vecindario

2 minutos de lectura

He integrado con éxito el Complemento jquery geocompleto en un sitio de wordpress. Mi problema es que no puedo limitar los resultados de la autosugestión al vecindario o sublocalidad. He revisado a fondo los tipos de Google Place, pero mis resultados son siempre los mismos. Sé que estoy haciendo algo incorrectamente en alguna parte. Esto es lo que tengo hasta ahora:

add_action( 'wp_head', 'add_geocomplete_script' );

function add_geocomplete_script() {
   ?>
   <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCJ1Bgyx1jSN3aRFB3uUkLLntXCONZfOyM&libraries=places"></script>
   <script src="<?php echo get_stylesheet_directory_uri() ?>/js/jquery.geocomplete.js"></script>
   <script src="<?php echo get_stylesheet_directory_uri() ?>/js/logger.js"></script>
   <?php 
} 

function woocommerce_checkout_autocomplete(){
?>
    <script>
        jQuery(document).ready(function() {

            var options = {
                //types: ['(cities)'],
                //types: ['sublocality'],
                //componentTypes: ['neighborhood'],
                types: ["geocode", "sublocality"],
                country: 'za'
            };

            jQuery("#billing_myfield8").geocomplete(options);

            jQuery("#billing_myfield8").on("keyup", function() {
                //jQuery("#billing_myfield8").trigger("geocode");
                console.log('You typed in the input box');
            });
        });

    </script>

<?php
}

add_action( 'wp_footer', 'woocommerce_checkout_autocomplete' );

Con el código anterior, todavía puedo buscar una dirección, por ejemplo. 112 Calle de la Nada. No filtra los resultados.

avatar de usuario
Teyam

En primer lugar, tenga en cuenta el aviso de desaprobación en Autocompletar lugar en donde dice que

los types el parámetro está en desuso a partir del 16 de febrero de 2016, reemplazado por un nuevo type parámetro que solo admite un tipo por solicitud de búsqueda.

Con esto, te sugiero que uses type parámetro para restringir los resultados a lugares que coincidan con el tipo especificado. Solo se puede especificar un tipo (si se proporciona más de un tipo, se ignoran todos los tipos que siguen a la primera entrada).

Adicionalmente, desde el lista de tipos admitidos para realizar solicitudes de autocompletar, puede utilizar regions escriba para devolver cualquier resultado que coincida sublocality.

Por último, le ayudará si pasa por Documentación de búsquedas de lugares y también verifique la solución dada en esta publicación SO.

¿Ha sido útil esta solución?