Advanced Custom Fields: Multiple Coordinates
Advanced Custom Fields: Multiple Coordinates

Advanced Custom Fields: Multiple Coordinates

2.3/5 (4 ratings) 10 active installs Updated Jun 9, 2026
The plugin in action in the backend.

The plugin in action in the backend.

A multi-point Google Maps field for Advanced Custom Fields. Click to add markers, drag to reposition, right-click to remove.

The plugin reads your existing Google Maps API key from ACF’s global setting (google_api_key), so no extra configuration is needed if you already use ACF Map fields. If you don’t have one set, you can also provide a key via the acf_multi_coords_gmaps_key filter.

Originally inspired by the single-point ACF: Coordinates field by Stupid Studio; this plugin extends the idea to multiple points per field.

Licensed under the GNU General Public License v3. See gpl.txt for details.

Usage

When you create a new custom field with ACF, set the field type to Multiple Coordinates map. The coordinates chooser will then show up when you edit a post with your custom fields.

The tool adds a point on each click on the map. To remove the point, select the “Remove Coordinate” button and click a point. You can also show the points as a polygon on the map with the “Show area on map” button, and show the actual coordinates in a semicolon-separated list with the “Show coordinates” button. The search field is only there to quickly take you to different places on the map — not to add the actual points.

To get the coordinates data on your frontend, simply request the field value and you get the coordinates in a latitude/longitude array plus the zoom level, like this:

<?php
$values = get_field('*****FIELD_NAME*****');
print_r($values);
/* gives you something like:
    Array
    (
        [coords] => Array
            (
                [0] => Array
                    (
                        [lat] => 57.156363766336
                        [lng] => 16.364327427978
                    )
                [1] => Array
                    (
                        [lat] => 57.159612809986
                        [lng] => 16.370315551758
                    )
            )
        [zoom] => 13
    )
*/
?>