基本的に、うちのサイトで使用しているGoogleMapsAPIを使うプラグインは、V2をベースで使っている。
V2はまだ使えるけど、1年くらいまえに廃止になってて、今はV3だそうだ。
じゃあ、いきなり使えなくなる前に、置き換えをしようかなと調査。コードに互換性が無いようなので、使うなら書き換えないといけない。
しかし、宣言方法が変わるだけで、使えなくなった機能はなさそうな感じ。
関数の大まかな流れは変更しないで、V3仕様に書き方を換えるだけ。
一番良かったのは、四角の範囲指定すると、その範囲が入るようにズームを調整してくれる機能は素晴らしい。別に計算してたルーチンを削除できる。
たとえば、
sort($xarray);
$maxgap = count($xarray)-1;
if($maxgap==0){
$centerx = $xarray[$maxgap];
$centery = $bottom + ($top - $bottom);
$viewmap .= " var center = new google.maps.LatLng($centery,$centerx);\n";
$viewmap .= " map.setCenter(center);\n";
} else {
$viewmap .= " var bosw = new google.maps.LatLng($bottom,$xarray[0]);\n";
$viewmap .= " var bone = new google.maps.LatLng($top,$xarray[$maxgap]);\n";
$viewmap .= " var bounds = new google.maps.LatLngBounds(bosw,bone);\n";
$viewmap .= " map.fitBounds(bounds);\n";
}
のように、範囲の最大値と最小値を指定してやれば、アイコンを含んだその範囲がマップ内に表示されるように調整してくれる。
NP_GoogleMapsなんかでは、大体1.1倍とか1.2倍とか計算してズームを指定していたんだけどね。
使い勝手としては、表示が速くなったのと、ストリートビューが使えるようになったことか。住所変換と経路表示機能はまだ試してないけれど、できたら面白そう。
そんな感じで、旅行ブログをGoogleMAPSAPI V3に対応させた。ストリートビューを表示すると、写真撮った場所周辺が見回せておもろい。
コメント