v3対応の最新版はこちらへどうぞ PukiwikiでGoogleMaps3
更新概略†
2006-07-15 2.1.0 機能追加色々。履歴と2.1の変更点を見てください。
2006-07-29 2.1.1 バグ修正。履歴と2.1.1の変更点を見てください。
2006-08-24 2.1.2 バグ修正。履歴と2.1.2の変更点を見てください。
2006-09-30 2.1.3 バグ修正。履歴と2.1.3の変更点を見てください。
2006-12-30 2.2.0 機能追加色々。履歴と2.2の変更点を見てください。
2007-01-10 2.2.1 バグ修正。履歴と2.2.1の変更点を見てください。
2007-01-22 2.2.2 バグ修正。履歴と2.2.2の変更点を見てください。
2007-01-31 2.2.3 バグ修正。履歴と2.2.3の変更点を見てください。
2007-08-04 2.2.4 バグ修正と機能追加。履歴と2.2.4の変更点を見てください。
2007-09-25 2.2.5 バグ修正。履歴と2.2.5の変更点を見てください。
2007-12-01 2.3.0 機能追加削除。履歴と2.3.0の変更点を見てください。
2008-10-21 2.3.1 バグ修正。履歴と2.3.1の変更点を見てください。
サンプル†
-
金閣寺 - 足利義満の別荘。先日変な男が光ケーブルを接続するために車で突っ込んだ。東側の門は暇そうな警備員が守りを固めている。(長文サンプル)
-
北野天満宮 - 菅原道真を祭ってる
-
仁和寺 - 和尚が名物(嘘)
-
龍安寺 - 石庭のうずまきが有名
こんな風に書く
&googlemaps2(width=300px, height=200px, mapctrl=small);
&googlemaps2_icon(神社, image=http://reddog.s35.xrea.com/img/googlemaps/mm_sample.png, shadow=http://www.google.com/mapfiles/shadow50.png, iw=20, ih=34, sw=37, sh=34, ianchorx=10, ianchory=34, sanchorx=10, sanchory=0, area="1 7 7 0 13 0 19 7 19 12 13 20 12 23 11 34 9 34 8 23 6 19 1 13 1 7", transparent=http://www.google.com/intl/ja_ALL/mapfiles/markerTransparent.png);
-&googlemaps2_mark(35.039379, 135.729248, title=金閣寺, caption=足利義満の別荘。先日変な男が光ケーブルを接続するために車で突っ込んだ。東側の門は暇そうな警備員が守りを固めている。(長文サンプル), image=http://reddog.s35.xrea.com/img/googlemaps/img_kinkaku.jpg);~
-&googlemaps2_mark(35.031087, 135.735106, title=北野天満宮, caption=菅原道真を祭ってる, icon=神社);~
-&googlemaps2_mark(35.028723, 135.712963, title=仁和寺,caption=和尚が名物(嘘));~
-&googlemaps2_mark(35.034477, 135.718348, title=龍安寺,caption=石庭のうずまきが有名);~
(※)最近マーカーの透過画像(transparent.png)への直リンクがxreaに怒られないかと不安になってきたので透過画像はグーグルのマーカーのに変更した。(2007-06-06記)
動作環境†
Pukiwiki1.4.7をEUC-JP(2007年6月からUTF-8に移行)で使っています。
DTD宣言でXHTMLをHTML 4.01 Transitionalとして宣言してあります。
FirefoxとIEで超適当に動作確認。動かない環境がありそうな気がする。
ライセンス†
BSD-Styleのライセンスです。
Google Maps APIそのものの使用条件は、Google Maps API Terms of Useを読んでください。要約すると、
- ユーザーが無料でアクセスできるなら商用、個人問わず自由に使用可能。
- イントラネットは不可。
- 一日50万ページビューのときは事前に申告する。
ということらしいです。この条件に合わない時は、エンタープライズ版を購入しろということらしいです。このPukiwikiのプラグインもGoogleのAPIを使っているので、Googleの示した使用条件に従って使用してください。
ダウンロード†
インストール†
- Google Maps API - Sign Upでキーを取得する。(無料)
- 別にやらなくてもいいけど、googlemaps2.inc.phpのデフォの値(keyとか)を書き換えとくと後で楽。
- pluginディレクトリにgooglemaps2.inc.phpとgooglemaps2_mark.inc.phpとgooglemaps2_icon.inc.phpとgooglemaps2_draw.inc.phpとgooglemaps2_insertmarker.inc.phpをコピーする。
わかっている不具合†
- Operaで滑らかズームできない。
- Operaで右ダブルクリックでズームアウトしない。
複数のページを一つのページに出力するようなincludeやcalender_viewerのようなプラグインを使うと地図が表示されない。→2.1.1で修正。
携帯電話で見るとソースコードが表示されてしまう。→2.1.3で修正。
overviewコントロールを使うと地図のドラッグが挙動不審になる→2.2.1で修正。
googlemaps2でwidth, heightに単位指定しないと表示が崩れる。→2.2.2で修正。
FirefoxでGoogleのアイコンの背景が透過しなくなった。→Googleがコードの実装を変更したため。しばらく放置で様子見。直らないようだったら対応を考える。気になる人はPukiwikiのCSSのa:linkのbackground-color:inheritを除くなどして対応するといいかも。→2.2.3で暫定的に対応した。Google側の今後の変更によってまた色々手を入れるかもしれない。
Crossコントロールを表示時にフキダシを開き、その状態から他のマーカーをクリックしてフキダシを開くと、フキダシの位置がずれる。→2.2.3で修正。
- 1.1 2005-09-25
- 2.0 2006-04-20
- Googlemapsのverion2のAPIに対応した。大幅仕様変更。
- 2.1 2006-07-15
- 滑らかズームに対応した。
- ダブルクリックズームに対応した。
- マーカーのタイトルをツールチップで表示するようにした。
- ブロック型の書式に対応した。
- commentプラグインを
パクった参考にしたgooglemaps2_insertmarkerを追加。
- XSS対策をした。その結果googlemaps2_markのformatlist, formatinfoはユーザーから使えなくなった。これらを変更したい場合は、googlemaps2_mark.inc.php冒頭の定数定義を書き換えてください。
- 2.1.1 2006-07-29
- 複数のページを一つのページに出力するプラグインを使うと地図が表示されないバグを修正した。
- 2.1.2 2006-08-24
- 単語検索からマーカー名がハイライトされるとエラーになるバグを修正した。
- 2.1.3 2006-09-30
- 携帯電話PDA用のレイアウトでスクリプトを出力しないようにした。
- 2.2 2006-12-30
- 住所から地図を移動できるジオコーダーのコントロールを作った。
- 地図にセンタークロスを表示できるようにした。
- ふきだしを最大化してPukiwikiのページを表示できるようにした。
- 地図のズーム値でマーカーの表示/非表示を変えられるようになった。
- 図形の描画で塗りつぶしができるようになった。
- マップタイプの切り替えコントロールを小さく表示するようにした。
- GoogleのURLをmaps.google.comからmaps.google.co.jpに変更。IEで日本語が表示できるようになった。
- ふきだしに画像がある場合、画像の読み込みを待ってからふきだしを開くようにした。画像が重い場合、ふきだしが表示されるまでタイムラグがあるかもしれないが、画像がふきだしからはみでないようになった。
- 2.2.1 2007-01-10
- overviewctrlを使うと地図が挙動不審になるバグを修正。
- 複数のページのgooglemaps2_insertmarkerを一つのページに表示したときに挙動不審になるバグを修正。
- 2.2.2 2007-01-22
- overviewtypeにautoを追加。オーバービューで地図タイプの切り替えに連動。
- googlemaps2のwidth, heightで単位の省略時にpxを自動で補うようにした。
- 2.2.3 2007-01-31
- Crossコントロール表示時にフキダシのパンの挙動がおかしかったのを修正。
- Crossコントロールの色を衛星写真の時は白にするようにした。
- PukiwikiのCSSによりGoogleのロゴが透過しない問題に暫定的に対応した。
- 2.2.4 2007-08-04
- IEで図形を描画できないのを修正。
- googlemaps2にKML読み込みのgeoxmlオプションを追加。
- 2.2.5 2007-09-25
- googlemaps2のgeoxmlオプションを使うとgooglemaps2_insertmarkerが使えない不具合を修正。
- 2.3.0 2007-12-01
- googlemaps2のgeoctrlの廃止。代わりにgooglebarオプションを使ってください。
- googlemaps2に地名で検索できるgooglebarオプションを追加。
- googlemaps2にimporticonオプションを追加。他のページのアイコンを読み込む。
- googlemaps2にbacklinkmarkerを追加。バックリンクからマーカーを収集して表示する。
- googlemaps2のoverviewtypeオプションの廃止。
- googlemaps2_markのmaxurlの廃止。互換性のために一応maxcontentのエイリアスとして残したけど将来は完全に取り除く予定。
- googlemaps2_markにmaxtilteとmaxcontentオプションを追加。フキダシの最大化はmaxurlのかわりにこれを使う。
- googlemaps2_markにtitleispagenameオプションを追加。titleを自動的にページ名にする。
- 2.3.1 2008-10-21
- APIのバージョンアップに伴う不具合のため、問題の無かった2.132dにバージョンを固定。
googlemaps2機能要約†
- 1ページ内に複数の地図を表示できるようになった。
- 新しいOverviewMapコントロールが表示できるようになった。
- 小さいズームボタンを表示できるようになった。googlemaps2(mapctrl=smallzoom)。
- マーカーにズームを設定できるようになった。googlemaps2_markのzoomオプション。
- アイコンを表示しないマーカーのようなもの(謎)を作れるようになった(googlemaps2_markのnoiconオプション。)
- マーカーを一時的に隠したりできるようになった。googlemaps2のtogglemarkerオプション
- アイコンの透明度の型抜きオプションが指定できるようになった。googlemaps2_iconのtransparent, areaオプション。
- 地図に線が引けるようになった。
- define, classオプションで繰り返し書くオプションを省略できるようになった。
- APIのver2ではIEでのJS関連のメモリリークが軽減するらしい。
- APIのver2では都市部の衛星写真の解像度が上がってるらしい。
- APIのver2ではスクリプトのファイルサイズが小さくなってるらしい。
ここから2.1
- 滑らかに地図がズームするようになった。
- マーカーのタイトルがツールチップで表示できるようになった。
- マーカーの登録が簡単にできるgooglemaps2_insertmarkerプラグイン。
ここから2.2
住所から地図を移動するジオコーダーのコントロール。(geoctrl)
- フキダシを最大化してPukiwikiのページを表示できるようになった。(
maxurl maxtitle, maxcontent)
- 地図に塗りつぶしポリゴンを描画できるようなった。
- マーカーごとに、表示するズームレベルを指定できるようになった。
- KML,GeoRSSの読み込み。
ここから2.3
- Google Barの表示
旧バージョン(1.x)から2.0の廃止、変更点(この章もういらない?)†
- googlemaps2
- cx,cyの廃止。新しいlat,lngで座標を指定するようにしてください。
- formatlist, formatinfo, alinkの廃止。これらのオプションはgooglemap2_markに移動しました。
- smallの廃止。新しいmapctrlでマップコントロールを指定してください。
- maptypeの廃止。表示非表示はtypectrlで表示タイプはtypeオプションで指定してください。
- mapname, lat, lng, mapctrl, type, typectrl, scalectrl, overviewctrl, togglemarker, noiconname, define, classの追加。
- zoom値の指定方法が変りました。newZoom = 17 - oldZoom。
- googlemaps2_mark
- formatlist, formatinfo, alinkの追加。
- noinfowindow, zoom, noicon, define, classの追加。
- 座標の指定がlat,lngになり、x,yの引数の順序が逆になりました。
- googlemaps2_icon
- 第一引数のnameだけ必須でimage, shadowimage, imagesize_w, imagesize_h, shadowsize_w, shadowsize_hは省略可能になった。
- オプション名の変更shadowimage→shadow, imagesize_w→iw, imagesize_h→ih, shadowsize_w→sw, shadowsize_h→sh
- transparent, area, define, classの追加。
- googlemaps2_drawを新規に追加。
2.0から2.1のAPIの変更点†
- googlemaps2
- dbclickzoom, continuouszoomオプションの追加。
- usetoolオプションの廃止。
- ブロック型書式に対応。
- googlemaps2_mark
- imageオプションでページに添付された画像を使えるようにした。これはgooglemaps2_markのimageオプションだけでgooglemaps2_iconのimageオプションではいままでどおり画像へのパスを指定してください。
- formatlist, formatinfoオプションの廃止。
- ブロック型書式に対応。
2.1から2.1.1のAPIの変更点†
なし
2.1.1から2.1.2のAPIの変更点†
なし
2.1.2から2.1.3のAPIの変更点†
- googlemaps2.inc.phpの定数にPLUGIN_GOOGLEMAPS2_PROFILEを追加。GoogleMaps2が対応しているデバイスのプロファイル名をリストで定義する。デフォルトではdefaultのみ。それ以外のデバイス(携帯電話・PDA)の出力用プロファイルkeitaiではスクリプトを出力しない。Pukiwikiが1.4.5以上で、改造していなければそのままでよい。
2.1.3から2.2のAPIの変更点†
- googlemaps2
- geoctrl, crossctrlオプションの追加。
- googlemaps2_mark
- maxurl, minzoom, maxzoomオプションの追加。
- googlemaps2_draw
- fillopacity, fillcolor, inradiusオプションの追加。
- polygonコマンドの追加。
2.2から2.2.1のAPIの変更点†
なし
2.2.1から2.2.2のAPIの変更点†
- googlemaps2
- overviewtype に auto を追加。デフォルトの値もautoにした。
- width, heightの単位を省略可能にした。省略時の単位はpx。
2.2.2から2.2.3のAPIの変更点†
なし
2.2.3から2.2.4のAPIの変更点†
2.2.4から2.2.5のAPIの変更点†
なし
2.2.5から2.3.0のAPIの変更点†
- googlemaps2
- geoctrl, overviewtypeオプションの廃止。
- googlebar, importicon, backlinkmarkerオプションの追加。
- googlemaps2_mark
- maxurlオプションの廃止。
- maxtitle, maxcontent, titleispagenameオプションの追加。
2.3.0から2.3.1のAPIの変更点†
なし
Pukiwikiドキュメントの旧バージョン(1.x)から2.xの変更方法†
- googlemapsをgooglemaps2に書き換える。
- formatlist, formatinfo, alinkを使っていた場合はgooglemaps2_markにオプションを移す。
- cxをlngにする。cyをlatにする。
- small=1を使っていた場合はmapctrl=smallに変更する。
- small=0を使っていた場合はmapctrl=largeに変更する。
- maptype=0を使っていた場合はtypectrl=noneに変更する。
- maptype=1を使っていた場合はtypectrl=normalに変更する。
- zoomを使っていた場合は値を17-zoomにする。
- googlemaps_markをgooglemaps2_markに書き換える。
- googlemaps2_mark(x, y ...)のxyを入れ替えてgooglemaps2_mark(y, x ...)にする。
- googlemaps_iconをgooglemaps2_iconに書き換える。
- googlemaps_icon(a,b,c,d,e,f,g ...)て書いてたのを、googlemaps2_icon(a, image=b, shadow=c, iw=d, ih=e, sw=f, sh=g ...)という風にオプション名を付ける。
たぶんこれくらい。めんどくさい人用(動作非保証)→http://reddog.s35.xrea.com/js/pukiwiki_googlemaps2_update.html
リファレンス†
googlemaps2†
googlemaps2_mark†
&googlemaps2_mark(lat, lng ?, option=value, ...?);
#googlemaps2_mark(lat, lng ?, option=value, ...?)
- オプション
- map マーカーをつけるマップ名。googlemaps2のmapname。省略したらデフォの値になる。
- title マーカーの名前
- caption マーカーの説明
- image 画像。名前がhttp~で始まらないものはページに添付された画像と判断する。
- zoom 倍率(0~17)
- icon マーカーのアイコン(googlemaps_iconでiconを事前に作成しておく)
- nolist 地図以外のマーカーリスト(上の例でいえば地図の下のやつ)に出力しない。(0 or 1)
- noinfowindow フキダシを表示しない(0 or 1)
- noicon アイコンを表示しない(0 or 1)。これがtrueだとnoinfowindowもtrueになる。
- alink マップ上のinfoWindowと本文中のテキストをリンクさせる(0 or 1)
maxurl ふきだしを最大化したときに表示するPukiwikiのページ名かページのURL。URLは地図と同じドメインでなければならない。(2.3で廃止。2.3.0では一応まだmaxcontentの別名として機能している。)
- maxzoom マーカーを表示する、地図の最大ズーム値(0~17) (2.2から)
- minzoom マーカーを表示する、地図の最小ズーム値(0~17)(2.2から)
- maxtitle ふきだしを最大化したときのタイトル(2.3から)
- maxcontent ふきだしを最大化したときに表示するPukiwikiのページ名かページのURL。URLは地図と同じドメインでなければならない。(2.3から)
- titleispagename titleをページ名にする。
- 特殊オプション
出力されるリストとマーカーのフキダシの書式を変更するにはgooglemaps2_mark.inc.phpの
PLUGIN_GOOGLEMAPS2_MK_DEF_FORMATLIST と PLUGIN_GOOGLEMAPS2_MK_DEF_FORMATINFOをそれぞれ
書き換えてください。これらの定数で定義されているテンプレートは%title%と%caption%と%image%の文字列を各マーカーのそれに置き換えます。
googlemaps2_icon†
&googlemaps2_icon(name, ?, option=value, ...?);
#googlemaps2_icon(name, ?, option=value, ...?)
- オプション
- image アイコン画像
- shadow 影の画像
- iw アイコン画像の横幅
- ih アイコン画像の縦幅
- sw 影の画像の横幅
- sh 影の画像の縦幅
- ianchorx アイコンの位置調整
- ianchory アイコンの位置調整
- sanchorx フキダシの位置調整
- sanchory フキダシの位置調整
- area アイコンの透明領域のcoordsリスト。クリッカブルマップ。例 area="1 1 4 1 4 4 1 4"
- transparent アイコンの透明領域指定用pngファイル。
- 特殊オプション
googlemaps2_iconの第一引数でアイコンの名前を指定します。
以下の引数でアイコンと、アイコンの影のURLとそれぞれのサイズを指定します。
アイコンと影は左上の座標を原点にして重ねて表示されます。
オプションのianchorx, ianchoryはアイコンと影の表示位置を調整します。デフォルトでは左上がマーカーの座標になるので、上の例のように画像の下の真ん中あたりを座標に合わせたいときは、ianchorx = アイコンの横幅/2, ianchory = アイコンの縦幅でよいです。省略された時は0になります。
sanchorxとsanchoryはマーカーをクリックしたときに表示されるフキダシの位置調整をします。デフォルトではアイコンの左上に付きます。上の例では上辺の真ん中に来るように調整してます。省略された時は0になります。
アイコンの画像ではページ添付された画像を使うことはできません。
googlemaps2_draw†
&googlemaps2_draw(command, ?, option=value, ...?);
#googlemaps2_draw(command, ?, option=value, ...?)
コマンドで描画を指定して、そのコマンドが必要とするオプションを指定する。
- コマンド
- line
//(35.1, 135.1) (35.2, 135.2) (35.3, 135.3) を通る線を引く。
&googlemaps2_draw(line, width=10, opacity=0.5, color=#00FF00, 35.1, 135.1, 35.2, 135.2, 35.3, 135.3);
- 省略可能オプション
map, weight, opacity, color
- rectangle
//(35.1, 135.1)と対角が(35.2, 135.2) の四角形
&googlemaps2_draw(rectangle, lat1=35.1, lng1=135.1, lat2=35.2, lng2=135.2);
- 省略可能オプション
map, lat1, lng1, lat2, lng2, weight, opacity, color, fillopacity, fillcolor
- circle
//(35.0,135.0)を中心とした半径10kmの円
&googlemaps2_draw(circle, lat=35.0, lng=135.0, radius=10);
- 省略可能オプション
map, lat, lng, radius, weight, opacity, color, fillopacity, fillcolor
- arc
//(35.0,135.0)を中心とした半径10kmの0度から180度までの弧を描画
&googlemaps2_draw(arc, lat=35.0, lng=135.0, radius=10, stangle=0, edangle=180);
- 省略可能オプション
map, lat, lng, radius, inradius, stangle, edangle, weight, opacity, color, fillopacity, fillcolor
- ngon
//(35.0,135.0)を中心とした半径10kmの正5角形の描画
&googlemaps2_draw(ngon, lat=35.0, lng=135.0, radius=10, n=5);
- 省略可能オプション
map, lat, lng, radius, rotate, n, weight, opacity, color, fillopacity, fillcolor
- polygon
//(35.1, 135.1) (35.2, 135.2) (35.3, 135.3) を頂点とするポリゴンの作成。
&googlemaps2_draw(polygon, width=10, opacity=0.5, color=#00FF00, 35.1, 135.1, 35.2, 135.2, 35.3, 135.3);
- 省略可能オプション
map, weight, opacity, color, fillopacity, fillcolor
- オプション
- opacity 線の透明度 0.0~1.0
- weight 線の太さ
- color 線の色 #RRGGBB指定
- fillcolor 塗りつぶしの色 #RRGGBB指定 (2.2から)
- fillopacity 塗りつぶしの透明度 0.0~1.0 (2.2から)
- map 描画対象のmap名
- lat 緯度
- lng 経度
- lat1 緯度1
- lng1 経度1
- lat2 緯度2
- lng2 経度2
- radius 半径。単位はkm
- inradius arcを描画する時の内側の半径。単位はkm。(2.2から)
- stangle 開始角
- edangle 終了角
- rotate 回転度数
- n 正n角形の頂点数
- 特殊オプション
googlemaps2_insertmarker†
#googlemaps2_insertmarker(?, option=value, ...?)
ブロック型しかありません!
- オプション
- map マーカーをつけるマップ名。googlemaps2のmapname。省略したらデフォの値になる。
- direction マーカーリストを上に追加していくか、下に追加していくか。(up or down)
フォームからマップの中央にマーカーを登録する。ドラッグしたりマップを動かすと、マップ中央の位置情報が動的に更新されるので、マーカーを付けたいところをダブルクリックして中央に持ってきて、タイトルと詳細を記入してポストするだけです。
define, classオプションを使ったオプションの省略†
基本的に、これらのプラグインはoption=value形式でオプションを指定していくのだが、マーカーやアイコンの生成において同じオプションを繰り返し書くような場合も多く、ごちゃごちゃして見難かった。そこで、defineでオプション群を定義し、classでそれらをまとめて指定するというようなことができるようにした。
たとえば、次のように色違いのアイコンを3つ定義するとする。
&googlemaps2_icon(神社, image=http://reddog.s35.xrea.com/img/googlemaps/mm_jinjya.png, shadow=http://www.google.com/mapfiles/shadow50.png, iw=20, ih=34, sw=37, sh=34, ianchorx=10, ianchory=34, sanchorx=10, sanchory=0, area="1 7 7 0 13 0 19 7 19 12 13 20 12 23 11 34 9 34 8 23 6 19 1 13 1 7", transparent=http://www.google.com/intl/ja_ALL/mapfiles/markerTransparent.png);
&googlemaps2_icon(仏閣, image=http://reddog.s35.xrea.com/img/googlemaps/mm_bukkaku.png, shadow=http://www.google.com/mapfiles/shadow50.png, iw=20, ih=34, sw=37, sh=34, ianchorx=10, ianchory=34, sanchorx=10, sanchory=0, area="1 7 7 0 13 0 19 7 19 12 13 20 12 23 11 34 9 34 8 23 6 19 1 13 1 7", transparent=http://www.google.com/intl/ja_ALL/mapfiles/markerTransparent.png);
&googlemaps2_icon(古墳, image=http://reddog.s35.xrea.com/img/googlemaps/mm_kofun.png, shadow=http://www.google.com/mapfiles/shadow50.png, iw=20, ih=34, sw=37, sh=34, ianchorx=10, ianchory=34, sanchorx=10, sanchory=0, area="1 7 7 0 13 0 19 7 19 12 13 20 12 23 11 34 9 34 8 23 6 19 1 13 1 7", transparent=http://www.google.com/intl/ja_ALL/mapfiles/markerTransparent.png);
アイコンは同じ形状で色違いなだけで第一引数の名前と、image以外は全てオプションが同じだとすると、同じオプションを何度もくりかえし書くのは面倒。そこでdefine, classを使って書き直すと。
&googlemaps2_icon(dummy, define=mkan, image=http://reddog.s35.xrea.com/img/googlemaps/mm_jinjya.png, shadow=http://www.google.com/mapfiles/shadow50.png, iw=20, ih=34, sw=37, sh=34, ianchorx=10, ianchory=34, sanchorx=10, sanchory=0, area="1 7 7 0 13 0 19 7 19 12 13 20 12 23 11 34 9 34 8 23 6 19 1 13 1 7", transparent=http://www.google.com/intl/ja_ALL/mapfiles/markerTransparent.png);
&googlemaps2_icon(神社, class=mkan, image=http://reddog.s35.xrea.com/img/googlemaps/mm_jinjya.png);
&googlemaps2_icon(仏閣, class=mkan, image=http://reddog.s35.xrea.com/img/googlemaps/mm_bukkaku.png);
&googlemaps2_icon(古墳, class=mkan, image=http://reddog.s35.xrea.com/img/googlemaps/mm_kofun.png);
このように同じオプションを繰り返して書くのを省いてごちゃごちゃした部分を最小限に押し込んで、すっきり書くことができる。
PukiwikiでGoogleMaps2サンプルも見てみてください。
注意:今のところdefineの中にclassを指定して継承したり、複数のclassを指定したりすることはできません。最初はやろうと思ってたけどなんか複雑になりすぎそうな気がしてやめた。できません。
googlemaps2_drawのオプションの省略†
googlemaps2_drawにもdefine, classは一応作ったのだけど、実はあまり使わない(と思う)。というのはgooglemaps2_drawは一度オプションを使うと、そのオプションは保存され、次に使うときは省略できるという状態遷移しながら描画するという風に作った。例えば、(35.00, 135.00)を中心に、半径1km, 2km, 3km, 4kmの円を書く場合、
&googlemaps2_draw(circle, map=tmap, radius=1, lat=35.00, lng=135.00, opacity=0.5, weight=10, color=#FFFFFF);
&googlemaps2_draw(circle, radius=2);
&googlemaps2_draw(circle, radius=3);
&googlemaps2_draw(circle, radius=4);
のように最初のコマンドと同じパラメータは省略できる。次に色を変えて10kmのところに円を書く場合は、
&googlemaps2_draw(circle, radius=10, color=#00FF00);
のようにcolorオプションを変更する。
PukiwikiでGoogleMaps2サンプルも見てみてください。
その他†
- デフォルトの値を変えたいとか、もう少しあれをなんとかしたい場合はソースを勝手に改造して使ってください。
- 省略可能な引数のオプションは順番もどうでもいいです。
- googlemaps2のkeyオプションはソースファイルに直接書いて省略した方が見やすい。
サンプル色々†
PukiwikiでGoogleMaps2サンプル
コメントをどーぞ†
- 探してました。ありがとうございます! -- SantA2 2006-05-11 (木) 22:07:05
- 1からGoogleMap2にバージョンアップさせていただきました。ありがとうございました。 -- まさ 2006-05-13 (土) 16:21:31
- 自分の環境でも何も問題なく動いていそうです。感謝感激。 -- Taketan 2006-07-05 (水) 10:08:40
- 素晴らしい!PukiWikiMod 用にちょっとだけ手を入れました。ありがとうございます。 -- nao-pon 2006-07-05 (水) 13:54:19
- すばらしいです、 -- jpopwiki 2006-07-05 (水) 14:58:33
- ありがたく使わせていただいてます。imageでページに添付された画像でも表示できればうれしいのですが。可能でしょうか? -- chikichiki 2006-07-10 (月) 10:43:18
- できると思いますけどアイコンが多い場合にサーバに負荷がかかりすぎませんかね? -- reddog 2006-07-10 (月) 18:24:07
- もの凄く便利です。このようなプラグインは非常にありがたい限りです。 -- uso4 2006-07-28 (金) 16:58:47
- 単語検索でgooglemaps2_markで指定した場所を検索し、該当ページに飛んだ場合、その場所のマーカーが表示されません(例えば、サンプルの「金閣寺」など)。IE6とFireFox1.5で確認。 -- froggy 2006-08-24 (木) 01:07:33
- 確認しました。バグ報告ありがとうございます。 -- reddog 2006-08-24 (木) 12:10:03
- 使わせていただきました。ありがとうございます。携帯で見ると地図は表示されずにソースが… -- ぷきぷき 2006-09-08 (金) 23:56:35
- webを見れる携帯持ってないけど何とかしたい思います・・・ -- reddog 2006-09-28 (木) 20:38:57
- 噴出しの中に半角の空白などを含んだ長い文字列を書きたいのですが、うまくいかないようです。また、噴出しの中にURLなどを記載したいのですが、可能でしょうか。 -- バッシー 2006-10-11 (水) 00:39:27
- 噴出しの中のHTMLタグはXSS対策をしたので基本的に一切使えません。すいません。どうしても使いたい場合はgooglemaps2_mark.inc.phpの出力テンプレートを書き換えたり、XSS対策してる部分を改造するなどしてください。あと長い文字列がうまくいかないというのはどういう状況かちょっとよくわかりません。 -- reddog 2006-10-11 (水) 12:48:08
- ご丁寧にご回答ありがとうございました。XSS対策でしたか。ちなみに、別ページからのリンクはどうしたらよいのでしょう。 -- バッシー 2006-10-15 (日) 01:20:34
- アクセスしてきたURLを判別して地図中の複数のマーカーから一つを選び、フキダシを開くということは今のところ不可能ですね・・・。 -- reddog 2006-10-16 (月) 07:18:50
- 使っています。 ありがとうございます。 現状倍率0-17ですが、ダブルクリックで19までの倍率を表示させたい場合に、どうすればいいでしょうか。 -- mentyan 2006-10-18 (水) 17:10:57
- &googlemaps2(, zoom=19,); とすると出来るんですが、ZOOMダウンすると復帰できないんです。 ヒントあればm(__)m -- mentyan 2006-10-18 (水) 22:31:20
- あれ なんか変な書込みかたしたかな? すんません。 -- mentyan 2006-10-18 (水) 22:33:58
- Google側が対応するまで待つしかないような。 -- reddog 2006-10-19 (木) 07:59:30
- http://googlemapsapi.blogspot.com/ を参照しました。 えらいすんませんでした。 -- mentyan 2006-10-19 (木) 08:13:48
- つくろうつくろうと思って早2年、結局こちらのプラグインを利用させてもらっています。 -- Matthew 2006-11-20 (月) 16:16:29
- ちょっと改造してこんなの作ってみました。 -- TOS 2006-12-16 (土) 09:56:55
- googlemaps2.inc.phpのオーバービューマップの設定を「hide」にするとマウスでのマップ移動で正常に動作しません。insertmarkerの座標も表示されなくなります。 -- chikichiki 2007-01-09 (火) 14:18:46
- バグ報告ありがとうございます。直したいと思います。 -- reddog 2007-01-09 (火) 18:45:23
- 使わせていただいております。IE7で&googlemaps2(width=???, height=???);のようにサイズを明示的に指定すると、サイズに関係なく地図が表示されずにコントロールだけが表示されてしまうようです。 -- integral-sparkling 2007-01-22 (月) 00:55:08
- 当方のサーバに入れてみましたが,IE6で地図が表示されない現象が起きています。Javascriptnoエラーメッセージは「onloadfuncは宣言されていません」・「終了していない文字列型の定数です」です。ただしこのページにあるサンプルや他サイトの地図は表示されます。またie7では全く問題ありません。 -- yocchi 2007-01-22 (月) 09:38:26
- >integral-sparklingさん ???の部分は何て書いたんですか?数字だけなら300pxとか50%とか単位をつけてみてください。 -- reddog 2007-01-22 (月) 14:17:00
- >yocchiさん ちょっとわからないです。問題のページを見せてもらうことは可能でしょうか? -- reddog 2007-01-22 (月) 14:25:45
- Puki WikiをUTF-8版からEUC-JP版にしたらIE6でも問題なく動作しました。ろくに確認もせずに大変失礼いたしました。UFT-8だと問題があるということなのでしょうか?plugin側の設定変更で対応可能ですか? -- yocchan 2007-01-22 (月) 17:40:53
- 単位は必須なんですね。勘違いしていたようです。申し訳ありません。回答ありがとうございました。 -- integral-sparkling 2007-01-22 (月) 18:17:24
- >yocchiさん EUCでプラグインを書いてるので、プラグインをUTF-8に変換すればUTF-8版のPukiwikiでも動作するんじゃないでしょうかね・・・。たぶん・・・。 -- reddog 2007-01-22 (月) 18:52:13
- >integral-sparklingさん 2.2.2で単位を省略できるようにしておきます・・・ -- reddog 2007-01-22 (月) 18:57:47
- moveendで場所をdocument.form.locate.valueや指定の入れ物に代入するようなscriptいれてください~ -- ah-huh 2007-01-24 (水) 16:00:02
- googlemaps2_insertmarkerはどうですか? -- reddog 2007-01-24 (水) 19:02:25
- googlemaps2_insertmarkerと同じことがやりたいのですが 項目ga -- ah-huh 2007-01-31 (水) 15:40:34
- うーむ・・・もうちょっと詳しくお願いします。一行コメントの限界か -- reddog 2007-01-31 (水) 23:05:58
- http://blog.webox.biz/2007/01/pukiwikigooglemaps.html -- 2007-02-03 (土) 12:07:06
- wikiページの階層やリンク先によってgooglemaps2()にエラーが出る場合があるのですが、同じ経験をされた方いませんかね?全く同じソースを新規ページに貼り付ければエラーなしでうまく行くのに、MenuBarから階層化したページからリンクしてそのページを開くと、googlemaps2()でエラーが出て(地図は表示される)、続く&googlemaps2_mark()が実行されないのですが。 -- detach 2007-03-25 (日) 07:41:13
- 階層化したページでエラーが出るということですか?ブラウザと再現手順をもう少し詳しく教えてください。 -- reddog 2007-03-25 (日) 18:07:13
- できれば実際に見ていただきたいのですが、編集用のアドレスをご連絡する方法はございませんか? 現状FrontPageに2つのページへのリンクを作っています。両方のページのソース(googlemap2部分)は同じです。片方はメニューバーからの階層下にリンクがあります。もう一方はテスト用に作ったページです。テストページの方はエラーも起こらず次の_mark()が実行されるのですが、階層下にリンクのあるほうはgooglemap2()でエラーがでて_mark()が実行されません。ブラウザはIE6です。 -- detach 2007-03-25 (日) 20:13:56
- 申し訳ありません。自己解決です。同ページにhtmlinsertを使用していたのですが、そのhtmlでエラーが起こっていたようです。お手数をおかけしました。 -- detach 2007-03-25 (日) 20:39:30
- PukiwikiでGoogle Maps : オープンソースで学ぶWeb API : 記事 : MASHUPEDIA - マッシュペディア - : Web API x Mashup http://www.mashupedia.jp/docs/view/7 -- 2007-05-01 (火) 15:06:56
- 住所をキーにしていきなり地図を表示できんのかね? -- pukiwikiふぁん 2007-05-06 (日) 10:24:38
- そのような機能は検討したことがあるのですが、毎マーカーごとにGeocoderサーバに問い合わせるのでマーカーが増えると遅くなる場合があったり、入力された住所が誤っていたり、微妙に座標がずれていた場合とか、問い合わせに対して複数の座標が帰ってくる場合とか、どうしようかなあと思って放置中です。 -- reddog 2007-05-08 (火) 20:52:57
- 素晴らしいです。早速試してみました。1点提案です。googlemaps2_mark.inc.php の、PLUGIN_GOOGLEMAPS2_MK_DEF_TITL ですが、global $vars;$page = isset($vars['page']) ? $vars['page'] : '名称未設定';define ('PLUGIN_GOOGLEMAPS2_MK_DEF_TITLE', $page); という感じで、デフォルトを現在のページ名にするというのはいかがでしょうか。 -- masashi 2007-06-05 (火) 06:55:39
- これはページ名が店舗の名前とかで、地図を張ってマーカーで位置を示すというシチュですか?確かにそういう場合は省略できたほうが楽ですね。でも複数の位置をまとめるようなページとか地図がページのメインコンテンツでない場合だと「名前無し」のタイトルのほうが名前をつけていないのだなということが閲覧者にわかりやすいと思うんですよね。まあ両方使えるようにページ名をタイトルにするという新しいオプションを用意する方法もありますが -- reddog 2007-06-05 (火) 21:02:39
- その通りです。ページ名がお店の名前で、地図にマーカーを出しています。んで、全体地図ページを用意して、そこで簡単な php で、googlemaps2_markを取り出し、まとめたりしてみました。そこでは ) を ,maxurl=$page,title=$page) に置き換えたりしています。恥ずかしながら、こんな感じです。 -- masashi 2007-06-19 (火) 10:02:00
- 改造して問題なく動いてるなら、そのまま運用していけばいいと思いますが・・・。あと複数のページに散らばってるマーカーはバックリンクで集めているんですか?こういう機能追加しようかな・・・ -- reddog 2007-06-20 (水) 23:14:10
- すいません、wikiとか phpがよくわかってないので、ls のソースをベースに、ループで全pageを、個々に get_source して、それを preg_match_allして、ひっかかったら、抜き出しているだけです。必要に応じて preg_replaceもしてますケド。こちらでまとめ機能を御用意いただけたら、ぜひ使ってみたいです? -- masashi 2007-06-21 (木) 11:42:44
- 初めまして。素晴しいプラグインに感謝しつつ、GTileLayerで自作MAPを表示出来ないか試行錯誤中です。その様なオプション、または機能追加・改造はできますでしょうか。 -- mimo 2007-07-30 (月) 21:52:15
- あ、すいません誤解招く書き方でした。 訂正「~は個人レベルで出来ますでしょうか?」と言う意味でした。 -- mimo 2007-07-30 (月) 21:54:02
- そういうオプションは無いですが、改造すればできると思います。個人レベルでは地図を描くのが大変だと思いますが -- reddog 2007-07-30 (月) 23:57:17
- ご返答有り難う御座います。何でも作者さんへ要望として押し付けるのは失礼かと思いますので、先ずは素人ながらGTileLayerで表示する為の改造糸口を何とか模索してみたいと思います。 -- mimo 2007-07-31 (火) 01:11:53
- いつのまにかIEでラインが表示できなくなりました。html.phpを修正して逃げてますが、正しい対応ってどうすればいいでしょうか? -- TOS 2007-08-03 (金) 22:58:23
- スパムログからサルベージ・・・。スパム対策の不備?で投稿できなくてすいません。これはすぐに直したいと思います。 -- reddog 2007-08-04 (土) 06:34:50
- ご対応ありがとうございます。表示できました。 -- TOS 2007-08-08 (水) 08:18:29
- 噴出しの中に他のページを表示させたときに、IEだと何故かページ全体のリンク関係の文字色(a:hover,a:link等)だけが勝手に変わり、噴出し内のページにCSSが正しく適用されない現象が起きています。FireFoxでは正常です。どんな原因が考えられますか? -- yocchan 2007-08-24 (金) 17:10:36
- 勝手に変わるというのはどう変わるんでしょうか。IEは6ですか7ですか。サンプルページのやつはどう見えていますか。 -- reddog 2007-08-25 (土) 16:19:26
- 説明不足でした。このサイトではなく、当方のサイトについての異状です。IE6も7も同様です。吹き出し中の+ボタンを押すと、他のCSSを読み込み、リンク文字色が変更になる感じです。吹き出し中に表示する当該ページがない場合は、枠が大きくなるだけで、文字色の変化などはありません。リロードすると正常に戻ります。 -- yocchan 2007-08-25 (土) 20:11:50
- うーん、ひょっとしてmaxurlで読み込んだページのスタイルがpukiwikiのスタイルを上書きしてるんじゃないですかね・・・ -- reddog 2007-08-27 (月) 16:38:30
- 確かにそんな感じですが、もしそうならFireFoxだと異状ないのは何故でしょう?maxurlで読み込むCSSは指定できるんでしょうか?どのようにして変更するのか教えていただければと思います。 -- yocchan 2007-08-27 (月) 16:55:59
- firefoxで異常がないというのはそのものを見てないのでなんともいえませんけど、ただ、この問題はgoogle側の実装の問題で今の段階ではmaxurlで表示するページでCSSを使わないというしか手はないような気がします -- reddog 2007-08-29 (水) 12:52:16
- ページを放っておくと、いつの間にかgooglemaps2:unsupported deviceと表示されているときがあります。気づいたときにそのページを編集→何もせずに更新すれば元に戻るのですが。使っているのはpukiwiki_plusのeuc版です。本体改造は段落編集が出来る差分パッチを当てたくらいです。似たような症状の方がいないみたいなので念のため報告させて頂きました。 -- 2007-09-10 (月) 01:01:46
- Plusはパッチなしで段落編集出来ましたね。ということは本体改造なしです。失礼しました。 -- 2007-09-11 (火) 00:48:07
- 座標を設定するのが大変なんですが、クリックで座標が表示できませんか? -- NSX 2007-09-17 (月) 15:52:57
- めんどくさいのはわかるんですが、いまいち使いやすいインターフェースが思いつきません・・・。地図中央の座標をどこかに表示するオプションを追加して改良することはできますが・・・。マーカーを打つだけならgooglemaps2_insertmarkerでいいような気もするし -- reddog 2007-09-18 (火) 19:00:23
- Pukiwikiで細かい機能が使えるのがとても魅力的です!一つ質問なのですが、サンプルの下の「金閣寺」をクリックすると、ブラウザの一番上までGoogleMapsの画像が飛び上がるようにして移動してしまいます。IE6とFirefoxで確認しました。この動作を止める方法を止めることはできないのでしょうか?よろしくお願いします。 -- kom 2007-09-22 (土) 11:13:58
- 誤「この動作を
止める方法を止めることはできないのでしょうか?」→正「この動作を止めることはできないのでしょうか?」 -- kom 2007-09-22 (土) 22:50:59
- googlemaps2_markのalinkオプションで0を指定したらどうでしょう -- reddog 2007-09-23 (日) 00:14:01
- 素晴らしいプラグインをありがとうございます。マイマップからkmlを引っ張ってきて表示できてとても喜んでいます。要望なのですが、この機能と同時にinsertmarkerも使えると大変ありがたいのです。どうかご検討いただけませんでしょうか? -- tso 2007-09-24 (月) 01:09:00
- あれ、これはおかしいですね。。。apiのバグっぽい気がしますけど、ちょっと調べてみます。 -- reddog 2007-09-25 (火) 23:07:37
- カスタムタイル(getTileUrl)に対応できませんか?googlemapでドラクエみたいなのをPukiWiki上でやりたいので・・・。 -- Logue
- 前にも同じような質問があったような・・・。ニーズあるのかな -- reddog
- 2.3のリンクが両方とも404になります。 -- yutaka
- ひさりぶりに自分のサイトでGooglemap2をインストールしているところを見たらマーカー等が表示されなくなってます。pukiwiki1.4.6でgm2.0利用でした。2.3に変えてもだめなのですが、何か心当たりありますか? -- まさ
- 地図は表示できてるならマーカーのオプションの書きかたを見直してみるとか・・・。現物を見てないので推測しかできませんが。 -- reddog
- Googlemaps2のoverviewctrl を使用しないようにしたらうまくいきました。 -- まさ
- PukiWiki Plus! 1.4.6-plus-u2 で利用させていただいています。markerを利用した際、一度目に必ずplugin_googlemaps2_getboolが見つからないというエラーが発生し、一度戻って再度登録すると問題なく見える、という障害が起りました。先にgooglemaps2を呼んでいるのですが、たぶん先にgooglemaps2.inc.phpが読まれるずにgooglemaps2_marker.inc.phpのほうが先に読まれてしまっているのだと思い、googlemaps2_marker.inc.phpの頭にrequire_once('googlemaps2.inc.php');を入れることで解決しました。 -- さとう
- 便利に使わせて頂いております。利用ページ -- 温泉マニア
- googlebarが表示されなくなりました。こちらのページのサンプルでもgooglebarが表示されていません。 -- casio
- グーグル側の不具合なのでしばらくしたら修正されるかも。気になるならgooglemaps2.inc.phpのスクリプトの読み込みのところ(keyを書くところ)でv2.xになってるのを2.132dに固定してみたらいいかも。 -- reddog
- 暫定的に対応しました。 -- reddog
- 無事復旧しました!!ありがとうございました!! --
- kml2gmap.inc.phpというのもあります。 -- [[hajime]]
- 希望していたことができました。ありがとうございました。 -- ukky
- 私もutf-8では真っ白になったけどeuc-jp版で使えました。それから私の携帯では使えません。google static APIを使うプラグインってないですか? -- fl
- ロゴとコントロールが透明にならない問題ですが、addControlしてもすぐにはDOMで拾えないみたいです。しょうがないのでsetIntervalで透明にできるまで何度も呼んでます。 -- gm
- すいません、↑は私がcssをいじってたのが問題でした。スルーしてください。 -- gm
- ありがとうございます、便利に使わせていただいております。噴出しの文字色を変えたいのですが・・・。何か方法はありますでしょうか?まだまだ初心者な者で。よろしくお願いします。 -- k9nz
- 利用させていただいています。googlemaps2のgeoxmlに添付ファイル名を指定できるようにできますか? -- ra5
- 「googlemaps2_insertmarker: error googlemapsを先に呼び出してください。」と表示された場合はgooglemaps2_insertmarker.inc.phpに require_once('googlemaps2.inc.php'); と最初に読まれるように追記すると動きました。 -- dubshine
- googlemaps2.inc.phpの471行目付近に「case "p": $type = 'G_PHYSICAL_MAP' ; break;」を追加し、googlemap2の引数にtype=physicalと記述すると地形レイヤで表示可能になります。登山家には便利です。 -- ヘル
- googlebar設置時に、検索後のアイコンをダブルクリックするとgooglemaps2_insertmarkerで作られたフォームのLATとLNGにアイコンの位置が設定されると入力がもっと楽になるのですが・・・改造がなかなかうまくいかないです(T.T) -- argama147
- 素人にも使え、助かっております。togglemarker設定時に、全iconの非表示(チェックボックスがoff)をデフォルト にする方法がありましたら、お教えください。 -- yagi3
- Googleから、version 2 の提供が2013年で打ち切るとかいう連絡が来ました。対応してくださいませんでしょうか。 --
PukiwikiでGoogleMaps PukiwikiでGoogleMaps3 CategoryJavaScript CategoryGoogle CategoryPukiwiki