- 2008-05-29 (木) 16:02
- WordPress
先日より記事にしていました、プラグイン『Google Maps for WordPress』のIEでの表示ですが、右往左往しつつも対策できました。これで安心してプラグインを使うことが出来ます。
対策したのはwp-google-maps.phpの中です。356行目あたりからがGoogle Mapsを差し込むコードになっています。デフォルトでは次のようになっています。
<div id='map_{$this->mapNum}' style='width:{$mapInfo->width}; height:{$mapInfo->height};' class='googleMap'></div>
<div id='dir_{$this->mapNum}'></div>
<script type="text/javascript">
//<![CDATA[
if (GBrowserIsCompatible()) {
wpGMaps.wpNewMap({$this->mapNum}, {$json});
}
//]]>
</script>
ここにdocument.body.codeにかかわる修正を施します。またIEとそ例外でこのコードの動作が若干異なることも考慮したコードも追加します。ということで私が施した対策はこうなりました。
<div id='map_{$this->mapNum}' style='width:{$mapInfo->width}; height:{$mapInfo->height};' class='googleMap'></div>
<div id='dir_{$this->mapNum}'></div>
<p> <!-- <-- add HTML tag -->
<script type="text/javascript">
//<![CDATA[
if (GBrowserIsCompatible()) {
// del wpGMaps.wpNewMap({$this->mapNum}, {$json});
// add -->
var func_{$this->mapNum} = document.body.onload;
function init_{$this->mapNum}(){
wpGMaps.wpNewMap({$this->mapNum}, {$json});
if(func_{$this->mapNum}){
func_{$this->mapNum}();
}
}
if(-1 != navigator.userAgent.indexOf('MSIE')){
document.body.onload = init_{$this->mapNum};
}else{
func_{$this->mapNum} = null;
init_{$this->mapNum}();
}
// <-- add
}
//]]>
</script>
</p> <!-- <-- add HTML tag -->
ちなみにコードの仕組みは Yusuke さんが作られた『簡単Google Maps』で書き出してくれるコードをそのまま使わせていただきました。情報を提供してくださった Yusuke さんにはこの場を借りてお礼を申し上げますm(_ _)m
とりあえずこれでGoogle Maps for WordPressの便利さそのままにIEでも使えるかと思います。IEで表示できないからと断念しておられた方、試してみてくださいね(^-^)
修正を施したGoogle Maps for WordPressでの表示はこんな感じになります。
…ただ、今度は投稿ページでGoogle Maps for WordPressの入力項目をエディターに反映することが出来ないことが発覚。自分のローカルでのテスト環境ではIEでも問題はなかったし、このサイトでもFirefoxを使った投稿でも問題はないんですよね。
パソコンを再起動することで解決しました。何だったんでしょうか…。
一難去ってまた一難…っていうところでしょうか(-_-)
- 関連記事:
関連記事は今のところありません
Comments:2
-
Yusuke 08-05-29 (木) 21:35
お役に立てて幸いです。
しかしSafariで表示するとページ上部が真っ黒です!何かの副作用でしょうか?
WindowsでもMacでも再現しました。
Trackbacks:1
- Trackback URL for this entry
- http://shinonon-web.net/2008/05/29/97/trackback/
- Listed below are links to weblogs that reference
- Google Maps for WordPressのIE表示、対策できました! from ある日の小さなつぶやき
- pingback from プラグイン導入によるSafariでの表示不具合 - ある日の小さなつぶやき 08-06-03 (火) 2:36
-
[...] Older [...]











