Support

Account

Home Forums ACF PRO Google maps greyed out

Helping

Google maps greyed out

  • As you can see here http://pvhh.meodemo.nl/instelling/test/ the map is rendering but is not rendering the whole map and stays blank/grey. Is there a possible solution for this?

    Code:

    PHP:

    $location = get_field(\’bezoekadreslocatie\’);

    if( !empty($location) ):

    echo(\'<div class=\”acf-map\”>

    <div class=\”marker\” data-lat=\”\’. $location[\’lat\’] .\’\”; data-lng=\”\’. $location[\’lng\’] .\’\”; ?>\”></div>

    </div>\’);

    endif;

    JS:

    (function($) {

    // popup is shown and map is not visible

    /*

    * new_map

    *

    * This function will render a Google Map onto the selected jQuery element

    *

    * @type function

    * @date 8/11/2013

    * @since 4.3.0

    *

    * @param $el (jQuery element)

    * @return n/a

    */

    function new_map( $el ) {

    // var

    var $markers = $el.find(\’.marker\’);

    // vars

    var args = {

    zoom : 16,

    center : new google.maps.LatLng(0, 0),

    mapTypeId : google.maps.MapTypeId.ROADMAP

    };

    // create map

    var map = new google.maps.Map( $el[0], args);

    // add a markers reference

    map.markers = [];

    // add markers

    $markers.each(function(){

    add_marker( $(this), map );

    });

    // center map

    center_map( map );

    // return

    return map;

    }

    /*

    * add_marker

    *

    * This function will add a marker to the selected Google Map

    *

    * @type function

    * @date 8/11/2013

    * @since 4.3.0

    *

    * @param $marker (jQuery element)

    * @param map (Google Map object)

    * @return n/a

    */

    function add_marker( $marker, map ) {

    // var

    var latlng = new google.maps.LatLng( $marker.attr(\’data-lat\’), $marker.attr(\’data-lng\’) );

    // create marker

    var marker = new google.maps.Marker({

    position : latlng,

    map : map

    });

    // add to array

    map.markers.push( marker );

    // if marker contains HTML, add it to an infoWindow

    if( $marker.html() )

    {

    // create info window

    var infowindow = new google.maps.InfoWindow({

    content : $marker.html()

    });

    // show info window when marker is clicked

    google.maps.event.addListener(marker, \’click\’, function() {

    infowindow.open( map, marker );

    });

    }

    }

    /*

    * center_map

    *

    * This function will center the map, showing all markers attached to this map

    *

    * @type function

    * @date 8/11/2013

    * @since 4.3.0

    *

    * @param map (Google Map object)

    * @return n/a

    */

    function center_map( map ) {

    // vars

    var bounds = new google.maps.LatLngBounds();

    // loop through all markers and create bounds

    $.each( map.markers, function( i, marker ){

    var latlng = new google.maps.LatLng( marker.position.lat(), marker.position.lng() );

    bounds.extend( latlng );

    });

    // only 1 marker?

    if( map.markers.length == 1 )

    {

    // set center of map

    map.setCenter( bounds.getCenter() );

    map.setZoom( 16 );

    }

    else

    {

    // fit to bounds

    map.fitBounds( bounds );

    }

    }

    /*

    * document ready

    *

    * This function will render each map when the document is ready (page has loaded)

    *

    * @type function

    * @date 8/11/2013

    * @since 5.0.0

    *

    * @param n/a

    * @return n/a

    */

    // global var

    var map = null;

    $(document).ready(function(){

    $(\’.acf-map\’).each(function(){

    // create map

    map = new_map( $(this) );

    // popup is shown and map is not visible

    google.maps.event.trigger(map, \’resize\’);

    });

    });

    })(jQuery);

    Functions.php

    function my_theme_add_scripts() {

    wp_enqueue_script( \’google-map\’, \’https://maps.googleapis.com/maps/api/js?key=AIzaSyABr7vRNAcEbK0hN7AYKmfdSm3ibYqw9PU\’, array(), \’3\’, true );

    wp_enqueue_script( \’google-map-init\’, get_template_directory_uri() . \’/js/google-maps.js\’, array(\’google-map\’, \’jquery\’), \’0.1\’, true );

    }

    add_action( \’wp_enqueue_scripts\’, \’my_theme_add_scripts\’ );

    function my_acf_google_map_api( $api ){

    $api[\’key\’] = \’AIzaSyABr7vRNAcEbK0hN7AYKmfdSm3ibYqw9PU\’;

    return $api;

    }

    add_filter(\’acf/fields/google_map/api\’, \’my_acf_google_map_api\’);

  • Please see my note on this post: https://support.advancedcustomfields.com/forums/topic/google-map-not-displaying-on-wp-backend/

    You need to add a billing account to your Google Console account.

Viewing 2 posts - 1 through 2 (of 2 total)

The topic ‘Google maps greyed out’ is closed to new replies.