スポンサードリンク
最短コピペで完了!!!
ややこしすぎるGoogle Maps APIで1日ハマったので、備忘録。少し強引だが、5ステップでまとめてみた。複数のカスタムマーカーにも対応してるので、これさえあれば、どの地図でもほぼほぼカバーできるでしょう。ふーーー汗。大雑把に書いたので、今後時間あるときにでも見やすく清書したいと思います。
5ステップ
- GoogleAPI登録し、APIコードを取得する
- 下記HTMLコードの「あなたのGoogleMapsAPIコードをここ」にAPIコードペースト
- HTMLファイルをサーバーにアップ(オンラインのサーバーにアップすること。LAMP等のローカル環境NG)
- ブラウザでアクセスして、MAPが表示されればほぼ完成。あとはCSSとHTMLなど分解して自由にスタイリング。
- 経度、緯度、ズーム、センターポジション、などを調べ、lat、lng、zoom等に入力。(マーカーのカスタマイズなどはコードのコメント参照を。「あなたのURL」の箇所を修正し、マーカーアイコンが保存されたディレクトリを指定)
各ステップの詳細説明
1. GoogleAPI登録し、APIコードを取得する
上記リンクに行き、下記手順でAPI取得
- サイドバー > ダッシュボード
- APIを有効にする
- 検索フォームに「Google Static Maps API」と入力
- 「Google Static Maps API」選択
- 「有効にする」選択
- サイドバー > 認証情報
- 「認証情報を作成」> 「API」選択
- APIをメモ(これがAPIコード)
- APIに名前をつける
- 「アプリケーション制限タブ」でリファラー(API使用を許可するURL)を入力。この際、テストサイトURLもつけておく。
- API制限でMap API選び保存
- ⚠️マークが取れていれば5分で反映
注意点:API制限でテストサーバーやローカル許可しても、本サイトでないと反映されない
HTML内に追記(CSS含んでいるのでこれ一枚で完了)
下記コードをhead内にペースト(といいながら、すみません、これペーストしなくてもいいです。ペーストすると閉じタグないし、おかしいですね。なんだっけこれ…)
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true_or_false">
ポイント
- 「true_or_false」は、位置検知センサー(GPSなど)がある機器ではtrue、それ以外はfalse。
- iPhoneなどの地図を表示する場合はtrue、それ以外はfalse。
- PC用の地図ならfalse。
HTML(CSS含んでいるのでこれ一枚で完了)
<!DOCTYPE html> <html> <head> <title>Google Maps API</title> <style> #Map { height: 400px; width: 100%; } </style> </head> <body> <!--HTMLに表示 --> <div id=Map></div> <!--Google Maps API --> <script> function initMap() { var mymark = {lat: 35.67241, lng: 139.48073}; // 目的地 var park1 = {lat: 35.67295, lng: 139.48122}; // パーキング1 var park2 = {lat: 35.67122, lng: 139.48}; // パーキング2 var park3 = {lat: 35.67017, lng: 139.47816}; // パーキング3 var mycenter = {lat: 35.6716, lng: 139.4797}; // センターポジション var map = new google.maps.Map(document.getElementById('Map'), { zoom: 17, // ズーム値 center: mycenter, scrollwheel: false // スクロールの有無 }); var marker = new google.maps.Marker({ position: mymark, map: map, animation: google.maps.Animation.DROP // ドロップアニメの有無 }); // カスタムマーカーは下記コメント参照 // var markerImg1 = {url: 'http://www.moranbong.tokyo/images/icons/icon_parking.png'}; // カスタムマーカーの画像ファイルを指定 // icon: markerImg1 // カスタムマーカーの画像呼び出し var iconBase = 'https://maps.google.com/mapfiles/kml/shapes/'; // マーカーの画像ファイルを指定 var marker = new google.maps.Marker({ position: park1, map: map, icon: iconBase + 'parking_lot_maps.png' // マーカーの画像呼び出し }); var marker = new google.maps.Marker({ position: park2, map: map, icon: iconBase + 'parking_lot_maps.png' // マーカーの画像呼び出し }); var marker = new google.maps.Marker({ position: park3, map: map, icon: iconBase + 'parking_lot_maps.png' // マーカーの画像呼び出し }); } </script> <!--Google Maps API - CODE --> <script src="https://maps.googleapis.com/maps/api/js?key=あなたのGoogleMapsAPIコードをここに&callback=initMap" async defer></script> </body> </html>
スポンサードリンク