0

我被困在我的网站上实施丰富的片段。该页面遵守 schema.org/MusicEvent 标准。但我无法弄清楚如何提取 ncenter 中包含的坐标对来填充 html 代码中的经度和纬度元标记。

var geocoder = new google.maps.Geocoder();
var map;
var ncenter;
function initialize() {

    var address = document.getElementById("address").firstChild.data;
    geocoder.geocode( {'address':address}, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            ncenter = results[0].geometry.location;
            var mapOptions = {
                zoom:12,
                center:ncenter,
                mapTypeId: google.maps.MapTypeId.ROADMAP
            }
            map=new google.maps.Map(document.getElementById("map"),mapOptions);
            var marker = new google.maps.Marker({
                map:map,
                position:ncenter
            });             

        } else { 
           alert("Geocode ERROR: " + status);
        }
        });
}
window.onload=initialize;

此外,这不适用于搜索引擎蜘蛛,因为它们不运行 JS。是否有任何替代解决方案(可能是基于 php 的查询)?

4

1 回答 1

1

您需要使用 javascript 编写元标记的内容,例如(使用 jQuery):

$('body').append('<div itemprop="geo">' + 
'<meta itemprop="latitude" content="' + ncenter.lat() + '" />' + 
'<meta itemprop="longitude" content="' + ncenter.lng() + '" />' + 
'</div>');

或者是的,您可以改用 PHP 来编写它。

于 2012-10-10T08:34:15.127 回答