Simple Shortcode for GoogleMaps


Simple to use, yet powerful, Google Maps plugin! Reviews say this is “Best Google Map Shortcode plugin”.

Put a Google map on your WordPress posts and pages simply and easily with a shortcode. Straight forward and easy to use! Ideal for contact page maps, maps showing delivery areas and many other uses!

This plugin will enable a simple shortcode that you can use for embedding Google Maps in any WordPress post or page. The shortcode uses the WordPress HTTPS API and the Transients API for delivering cached Google maps with little to no impact on your site’s performance.

Maps are displayed with the [pw_map] shortcode:

[pw_map address="New York City" key="YOUR API KEY"]

Google now requires that new accounts use an API key. You can register a free API key here.

You can have multiple map pins, simply add multiple addresses separated by semi-colon ;

[pw_map address="Statue of Liberty National Monument NYC;Empire State Building, New York, NY, USA" key="YOUR API KEY"]


  1. Activate the plugin.
  2. Obtain an API key here.
  3. Added [pw_map address=”your address here” key=”YOUR API KEY”] to any post or page.


Can I change the width or height of the map?

Yes, simply supply a width and height parameter:

[pw_map address="New York City" width="400px" height="200px" key="YOUR API KEY"]

You can also use percentages for heights:

[pw_map address="New York City" width="50%" height="200px" key="YOUR API KEY"]

Can I disable the scroll wheel?

Yes, simple add enablescrollwheel="false" to the maps shortcode.

[pw_map address="New York City" enablescrollwheel="false" key="YOUR API KEY"]

Can I disable the map controls?

Yes, simple add disablecontrols="true" to the shortcode.

[pw_map address="New York City" disablecontrols="true" key="YOUR API KEY"]

How are the maps cached?

Maps are cached using the WordPress Transients API, which allows for very efficient and WordPress standard database-based caching.

Each time you display a map, the address specified is used to generate a unique md5 hash, which is used for the cache identifier. This means that if you change the address used for your map, the cache will be refreshed.

For testing ONLY if you want to not use the cache then specify force=true


[pw_map address="New York City" force="true" key="YOUR API KEY"]

How often do caches refresh?

The maps are cached for 3 months. Caches are automatically cleared (for individual maps) when you change the address in the shortcode.

Can I specify multiple pins?

Yes simply separate addresses with a semi-colon ; the map will center on the first pin

[pw_map address="New York City;New Jersey" zoom="8" key="YOUR API KEY"]

How do I change the initial zoom?

Initial zoom can be controlled with teh shortcode option zoom= the default is zoom=15 use for instance zoom=10 to zoom out

[pw_map address="New York City" zoom="8" key="YOUR API KEY"]

Why do I get REQUEST_DENIED error?

This is likely to be an issue with the authorization you granted to your API key see Google API REQUEST_DENIED troubleshooting

It is recommended that you set an Application Restriction to restrict your API key from others using it.

However restricting the referrer HTTP will cause this error ‘API keys with referer restrictions cannot be used with this API’, this is because the geoencoding is performed server side and cached server side, so there is no browser referrer.
If you get this message change your restriction to IP addresses (web servers, cron jobs, etc.) using the IP address of your website.

If you restrict your API key to specific APIs make sure you enable at least
* Maps JavaScript API
* Geocoding API


April 5, 2022
I have a site that uses custom pods. I couldn't get any of the other map plugins to pick up the addresses. I was going to have to manually enter thousands. I was able to drop this code in and WHAM every custom place had a map!
January 25, 2022
It's so simple and easy to use! Best Google Map shortcode plugin I’ve ever seen. You guys are simply the best!
Read all 38 reviews

Contributors & Developers

“Simple Shortcode for GoogleMaps” is open source software. The following people have contributed to this plugin.


“Simple Shortcode for GoogleMaps” has been translated into 3 locales. Thank you to the translators for their contributions.

Translate “Simple Shortcode for GoogleMaps” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • update donation library


  • Further improve error output to assist problem resolution


  • Improve error output to assist problem resolution


  • Allow multiple address pins


  • load google maps cookieless to help with GDPR compliance


  • add donation info to settings


  • Fix block editor issue


  • Fix: few API key related issues


  • Fix: API key was not passed to the pw_map_get_coordinates() function


  • Added key parameter to the [pw_map] shortcode.


  • Added missing load_plugin_textdomain()
  • Changed textdomain for language packs


  • Fixed a bug with the zoom parameter not working


  • Fixed a bug with sites on HTTPS


  • Added support for disabling map controls via disablecontrols=”true”, thanks to Alex Hochberger
  • Added support for disabling the scroll wheel zoom via enablescrollwheel=”false”, thanks to Alex Hochberger


  • Fixed a conflict with the Live Composer plugin.


  • Updated Google Maps API to fix broken maps after version 2 was deprecated on March 8, 2013
  • Improved error responses


  • Added CSS to fix a problem with responsive themes


  • First release!