我正在尝试为wordpress创建一个插件,只需在帖子或页面创建中输入一组国家/地区名称(很像标签),并使用Google Maps APIv3生成一个地图,并突出显示所有国家/地区(使用多边形)来自自然地球数据集的数据),但我在寻找有关如何将这两种技术合并在一起的资源方面非常短暂。
我非常熟悉Google Maps API以及如何使用PHP和变量提供postpress对象在wordpress中操作它,但我似乎无法弄清楚如何将其与自然地球数据中提供的数据合并集。
我偶然发现了这些,但仍然无法弄明白。
Country boundries using Google Map API v3
Google Maps V3: Draw German State Polygons?
http://www.geocodezip.com/geoxml3_test/v3_FusionTables_query_sidebarF_local.html?country=Germany
最后一个链接非常接近我想要做的事情,除了多个国家,这只是以国家形式添加更多POI的问题。但我无法在我的网站上使用它。
有谁知道有关如何做到这一点的任何好教程?或者更好的是,有没有人已经做过这类事情并取得了成功?
这是我目前所拥有的:
<head>
<script type="text/javascript"src="https://maps.googleapis.com/maps/api/&sensor=false"></script>
<script type="text/javascript">
function initialize() {
map = new google.maps.Map(document.getElementById('map-canvas'), {
center: new google.maps.LatLng(27.246933444275317, 318.515625),
zoom: 2,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
layer = new google.maps.FusionTablesLayer({
map: map,
heatmap: { enabled: false },
query: {
select: "col38",
from: "19lLpgsKdJRHL2O4fNmJ406ri9JtpIIk8a-AchA",
where: "col2 in (\x27CAN\x27, \x27MEX\x27, \x27USA\x27, \x27JPN\x27
)"
},
options: {
styleId: 9,
templateId: 8
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
<head>
<body>
<div id="map-canvas" style="width: 100%; height: 400px;"></div>
</body>
谢谢,
答案 0 :(得分:1)
我认为您需要“IN”运算符:
我建议使用“iso”列来减小查询字符串的大小。
注意:我确实修复了这个“未终止的字符串”:
where: "col2 in (\x27CAN\x27, \x27MEX\x27, \x27USA\x27, \x27JPN\x27
)"
允许选择多个国家的示例: