-1

アドレス カスタム フィールドを含む何百もの投稿がありますが、フィールドが抜粋である場合があります。カスタム投稿タイプに応じてこれらのフィールドからアドレスを取得するので、それが整理されます。次に、このアドレスを渡してマップを生成できる関数を functions.php に作成したいと考えていました。

周りを見回して、次のコードを試しましたが、Chrome でしか機能しません。何が間違っていますか? FF と IE では動作しません。

function make_map($address) {

    $google_api_key = 'API';

    if($address): ?>
    <script src="http://maps.google.com/maps?file=api&amp;v=3&amp;sensor=false&amp;key=<?php echo $google_api_key; ?>" type="text/javascript"></script>
    <div id="map_canvas" style="width: 250px; height: 250px"></div>
    <script type="text/javascript">

    function showAddress(address) 
    {
        var map = new GMap2(document.getElementById("map_canvas"));
        var geocoder = new GClientGeocoder();
        geocoder.getLatLng(
            address,
            function(point) 
            {
                if (!point) 
                {
                alert(address + " not found");
                } 
                else 
                {
                map.setCenter(point, 13);
                var marker = new GMarker(point);
                map.addOverlay(marker);
                }
            }
        );
    }
    showAddress("<?php echo $address; ?>");
    </script>
    <br>
    <?php endif;
}
4

1 に答える 1

2

それはどのブラウザでも機能しないはずです。Google Maps API v2 構文を使用していますが、Google Maps API v3 が含まれています。

Google Maps API v2 は非推奨であり、2013 年 5 月に動作しなくなる可能性があることに注意してください。

于 2012-09-18T09:35:14.090 に答える