WPプラグイン「Basic Google Maps Placemarks」は、Google Maps APIを2種類、制限ありで設定する必要がある

Google Maps APIが2018年6月以降、サービスが変更になったことで、Maps APIを使用したグーグルマップが表示しない、または機能しないなど、問題が起こっている。

もちろん、APIキーを新規取得するか、新しいサービスへのAPIアカウントの移行を行えば問題は解消する。

今回は、WPプラグイン「Basic Google Maps Placemarks」、上記の関係と、このプラグインのアップデート[2016/08/19]で、Google Maps APIが追加された点から、変更点およびGeocoding APIの取得・設定方法について記す。

変更を余儀なくされたのは、「Basic Google Maps Placemarks」プラグインで設定していた地図に、新たな場所を追加したときに気がついた。

まず、新規の場所を設定するために、

Placemarks > Add News で、Placemark Address に住所や施設名を入れたところ、エラーメッセージが出力される。

Error geocoding addessエラーメッセージ
Error geocoding addessエラーメッセージ

Geocoding APIは、住所や施設名などをいれると、緯度・経度に変換したり、その逆引きも可能。

Geocoding APIが効いていないし、これでは目的の場所にピンが立たない。

ちなみに、geocordeが機能していた場合は、以下↓

geocode APIで緯度・軽度を表示
geocode APIで緯度・軽度を表示

エラーは表示されるが、新規場所の保存は可能である。
しかし、ピンは付かない状況。テキストのリスト表示は出来る。

設定 > Basic Google Maps Placemarks > Geocoding API に取得したGeocoding API を入力することとなる。

Basic Google Maps Placemarks では、2つのAPIキーの取得が必要である。

2つのAPIキーの取得が必要
2つのAPIキーの取得が必要

当初、上記のMaps API Key(=Maps JavaScript API)のプロジェクト(Google Cloud Platform) に、使用中のAPIを複数指定することが出来る、と検索記事にも書かれていたので、その手順で同じプロジェクトに、Geocoding API を追加した。

プロジェクトに、geocoing APIを追加
プロジェクトに、geocoing APIを追加

しかし、この方法では、Placemark Addressに場所を入れても、緯度・経度を取得出来ず、Google Cloud Platform上でも、リクエスト(5)は確認できるもすべてエラー(5)となっている。

プラグインの設定ページでGeocoding APIを入力しないで保存した場合、どうやら英語で「出力されるエラーメッセージには、2種類とも「キーの制限」をかけなさい」(勝手に解釈)と出ている。

いろいろ調べた結果、Maps JavaScript API と Geocoding API 「キーの制限」 > [ アプリケーションの制限] のかけ方 が違うことが判明。


Maps JavaScript API :HTTPリファラー(ウェブサイト)
Geocoding API : IPアドレス

そして、アプリケーションの制限は、1つのプロジェクトに1つしか設定できないことがわかる。

参考1:WEBサービスAPIの制限について> トピックス|Google Maps プラットフォームなら国際航業
参考2:Google Map APIs を使用するためのAPIキー取得と設定方法>マルティスープ株式会社

両方にキーの制限をかけるには、2つのプロジェクトを設定する必要があるということだ。

ということで、Geocoding API で新規のプロジェクトを作成。

キーの制限 > アプリケーションの制限 > IPアドレス に利用しているレンタルサーバのIPアドレスを入力。
(使用しているレンタルサーバのコントロールパネルのメニューなどから、IPアドレスを知ることができる。)

アプリケーションの制限>IPアドレス
アプリケーションの制限>IPアドレス

これで、ようやく問題は解決した。

ただし、すべてのマップ関連のプラグインで、2つのAPI、2つのプロジェクトが必要なわけではないので、各プラグインで必要なAPI設定を行えば、基本的には問題なく表示される。

ちなみに、2018年6月のMaps API 取得前のエラー画面。

Googleマップエラー
Googleマップエラー

このエラー表示は、新サービスが始動する前のもの。(2018年6月以前)

サービスが変更になるため、Google Maps APIを取得したが、Basic Google Maps Placemarks で表示されるマップだけ表示されないという不具合から、さらに、請求アカウントの登録も追加しないと表示されなかったりと、いろいろ問題解決には時間がかかったMaps API問題である。

 


コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です