Description
Disclaimer: Apple Maps, MapKit JS, and the Apple logo are trademarks of Apple Inc. Apple Maps may not be available in all countries or regions.
This plugin integrates Apple’s MapKit JS into an “Apple Maps” block in the WordPress block editor (Gutenberg). You will need an Apple Developer Program account, Maps Identifier, and Private Key to configure this plugin and connect to the MapKit JS API in order for the block to function. Note that the Apple Developer Program has an annual fee of 99 USD, in local currency where available. Prices may vary by region and are listed in local currency during the enrollment process. Fee waivers are available for the Apple Developer Program for eligible organizations.
Configuration
In order to start using the Apple Maps block, you will need to sign up for the Apple Developer Program and create your Maps identifiers, keys, and tokens. Follow the steps below to generate the Private Key, Key ID, and Team ID that you will need to configure the plugin and gain access to the MapKit JS API for the Apple Maps block.
Create an Apple Developer account
- If you don’t already have an Apple ID, then please create an Apple ID as it is required in order to enroll in the Apple Developer Program in the next step.
- Enroll in the Apple Developer Program as either an individual or organization. Note that its possible to have an existing Apple Developer account but not be enrolled in the Apple Developer Program, so please be sure to complete the enrollment process in this step.
- Sign the Apple Developer Program License Agreement in the Agreements, Tax, and Banking section of App Store Connect.
Create a Maps Identifier and Private Key
- Create a Maps ID and a MapKit JS Private Key.
- Copy the Private Key, paste it into the respective plugin setup field, and ensure the key includes the
-----BEGIN PRIVATE KEY-----
and-----END PRIVATE KEY-----
lines. - Open the Key you created in Step 1, copy the
Key ID
value, and paste it into the respective plugin setup field. - Open the Identifier you created in Step 1, copy the
App ID Prefix
value (notice the value is appended with(Team ID)
), and paste it into the respective plugin setup field. - Click the
Confirm MapKit Credentials
button in the plugin setup to gain access to the block options and begin customizing your Apple Maps block!
Screenshots
Blocks
This plugin provides 1 block.
- Apple Maps Add an Apple Map to your site.
Installation
- Install the plugin via the plugin installer, either by searching for it or uploading a .ZIP file.
- Activate the plugin.
- Follow the instructions to configure your accesss to the MapKit JS API.
- Use Apple Maps for WordPress!
FAQ
-
I’m seeing validation errors when trying to authenticate my MapKit JS credentials, what am I doing wrong?
-
If you have WordPress installed in a subdirectory, then there is a known issue specifically related to this setup where the WordPress Admin URL is different from the site URL. We’re working on a minor release to resolve this issue.
-
I want to update my MapKit JS credentials, what’s the best way to do this?
-
Our recommendation on updating the Apple Maps block settings focuses on ensuring the best experience for your site users. Specifically we recommend the following approach to ensure that existing Apple Maps on your site continue to be displayed during your MapKit JS credential transition.
- Create a new MapKit JS Private Key, Key ID, and/or Team ID.
- Update the Apple Maps block settings with the newly created Private Key, Key ID, and/or Team ID.
- Delete your old MapKit JS Private Key, Key ID, and/or Team ID.
-
Are there any MapKit JS rate limits?
-
There is a free daily limit of 250,000 map views and 25,000 service calls per the Apple Developer Program membership. For additional MapKit JS capacity needs you will need to contact Apple directly.
-
Can I see how many map views and service requests are made to my MapKit JS Private Key?
-
Yes, you can track your MapKit JS useage on the MapKit JS Developer Dashboard. You can also monitor map initializations and service requests in realtime, or see up to a year of activity by day, week, month, or year via the MapKit JS Dashboard.
Reviews
Contributors & Developers
“Block for Apple Maps” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Block for Apple Maps” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.1.0 – 2023-01-23
-
Note that this release bumps the WordPress minimum version from 5.2 to 5.8.
-
Added: Support for custom marker icons (props @iamdharmesh, @dinhtungdu, @fabiankaegy via #136).
- Added: Ability to control margin of map (props @fabiankaegy, @dkotter via #157).
- Added: End-to-end testing setup with Cypress (props @cadic, @peterwilsoncc via #126).
- Changed: Bump minimum WordPress version from 5.2 to 5.8 (props @cadic, @peterwilsoncc via #126).
- Changed: Update linting workflows to take advantage of GitHub Actions summaries (props @dinhtungdu, @fabiankaegy via #128).
- Changed: Update Support Level from
Active
toStable
(props @jeffpaul, @dkotter via #135). - Changed: Update composer dependencies to avoid conflict (props @peterwilsoncc, @iamdharmesh via #145).
- Changed: Bump WordPress “tested up to” version to 6.1 (props @iamdharmesh, @cadic via #148).
- Security: Bump
terser
from 5.14.1 to 5.14.2 (props @dependabot via #132). - Security: Bump
markdown-it
from 12.0.4 to 12.3.2 and@wordpress/scripts
from 20.0.2 to 24.5.0 (props @dependabot via #138). - Security: Bump
loader-utils
from 2.0.2 to 2.0.4 (props @dependabot via #146). - Security: Bump
simple-git
from 3.10.0 to 3.15.1 (props @dependabot via #149). - Security: Bump
json5
from 1.0.1 to 1.0.2 (props @dependabot via #153).
1.0.3 – 2022-06-27
- Added: Dependency security scanning (props @jeffpaul, @faisal-alvi via #121).
- Changed: Update UI of settings sidebar to make it feel more native (props @fabiankaegy , @Sidsector9 via #115).
- Changed: Bump WordPress version “tested up to” 6.0 (props @cadic via #125).
- Changed: Rename linting workflow (props @dinhtungdu via #124).
- Security: Bump
follow-redirects
from 1.14.4 to 1.14.8 (props @dependabot via #114). - Security: Bump
nanoid
from 3.1.30 to 3.3.1 (props @dependabot via #116). - Security: Bump
minimist
from 1.2.5 to 1.2.6 (props @dependabot via #118). - Security: Bump
node-forge
from 1.2.1 to 1.3.1 (props @dependabot via #119). - Security: Bump
async
from 2.6.3 to 2.6.4 (props @dependabot via #123).
1.0.2 – 2022-01-27
- Added:
wp env
for local development (props @fabiankaegy, @dinhtungdu, @jeffpaul). - Added: Issue management automation via GitHub Actions (props @jeffpaul).
- Changed: Bump WordPress version “tested up to” 5.9 (props @jeffpaul, @fabiankaegy, @dinhtungdu, @barneyjeffries).
- Changed:Turn off
autoComplete
for the search input field (props @dinhtungdu). - Fixed:
block.json
syntax error (props @dinhtungdu, @jeffpaul, @ryanwelcher). - Fixed: Enqueue map assets only when being used and clean up unused assets (props @joshuaabenazer, @fabiankaegy).
- Fixed: Remove orign restriction in local environments to allow for proxied domains (props @fabiankaegy, @dinhtungdu).
- Fixed: Block not working in Site Editor due to iframed editor (props @fabiankaegy, @dinhtungdu).
- Fixed: Search popover sizing (props @fabiankaegy, @dinhtungdu, @ankitguptaindia).
- Security: Bump
ini
from 1.3.5 to 1.3.8 (props @dependabot). - Security: Bump
elliptic
from 6.5.3 to 6.5.4 (props @dependabot). - Security: Bump
y18n
from 4.0.0 to 4.0.1 (props @dependabot). - Security: Bump
ssri
from 6.0.1 to 6.0.2 (props @dependabot). - Security: Bump
lodash
from 4.17.19 to 4.17.21 (props @dependabot). - Security: Bump
hosted-git-info
from 2.8.8 to 2.8.9 (props @dependabot). - Security: Bump
normalize-url
from 4.5.0 to 4.5.1 (props @dependabot). - Security: Bump
path-parse
from 1.0.6 to 1.0.7 (props @dependabot).
1.0.1 – 2020-08-11
- Added: Internationalization support via loading translations for the block (props @dinhtungdu, @helen via #69)
- Added: WordPress.org Block Directory integration (props @jeffpaul via #63)
- Added: Documentation and GitHub Action updates (props @helen, @jeffpaul via #59, #60, #68)
- Fixed: Debounce
addMarker
call when marker settings are changed (props @fabiankaegy, @dinhtungdu via #70) - Fixed: Key and Team ID settings placeholders (props @dinhtungdu, @helen, @jeffpaul via #57)
- Security: Bump
lodash
from 4.17.15 to 4.17.19 (props @dependabot via #67) - Security: Bump
elliptic
from 6.5.2 to 6.5.3 (props @dependabot via #71)
1.0.0 – 2020-06-25
🎉 Initial public release!
Block for Apple Maps gives you an easy way to add MapKit-powered maps with custom markers to your site. For all of the technical details, please see the full changelog.
0.1.0 – 2020-05-13
- Initial private release of Block for Apple Maps plugin.