有没有人知道如何使用wordpress查询向谷歌地图添加位置/标记?例如,显示特定帖子类型或类别的所有位置?
我可以使用下面的代码(所有帖子都有纬度/经度坐标)轻松返回一个帖子列表,但无法解决如何将其添加到" var位置"在谷歌地图js。
$query_school = new WP_GeoQuery(array( 'latitude' => ''.$location_lat.'', 'longitude' => ''.$location_long.'', 'posts_per_page' => 5, 'post_type' => 'surf-school'));
答案 0 :(得分:0)
在这一小段信息中,不确定你想要完成多少问题。但我了解到您正在尝试向Google地图添加标记,并且您拥有位置坐标。最好的方法是使用大量免费的开源wordpress插件,用于相同的目的。我提供了各种插件的链接,当您有位置坐标时,可以帮助您在Google地图上添加标记,还可以对相关位置进行分类。
https://www.mapsmarker.com/features/
https://wordpress.org/plugins/codepeople-post-map/
https://wordpress.org/plugins/wp-google-map-plugin/
http://codecanyon.net/item/advanced-google-maps-plugin-for-wordpress/5211638
http://www.instantshift.com/2014/01/23/wordpress-google-maps-plugins/
http://www.elegantthemes.com/blog/tips-tricks/wordpress-google-maps-plugins
http://www.wpmayor.com/best-google-maps-plugins-for-wordpress/
http://www.instantshift.com/2014/01/23/wordpress-google-maps-plugins/
你可以选择其中任何一个......
希望这会有所帮助!!
答案 1 :(得分:0)
好的,我想出来了。我不想使用另一个插件(非常感谢AniV)所以我正在为其他需要它的人发布我的解决方案。
基本上,您必须在var locations
内循环查询结果。
因此,这是添加到其他Google API javascript的解决方案:
var locations = [
<?php
$post_query = new WP_Query(array('posts_per_page' => 999, 'post_type' => array ('surfing-beach','surf-school')));
if(!empty($post_query->posts)){
foreach($post_query->posts as $post) {
$location_lat = get_post_meta($post->ID,'wp_gp_latitude',true);
$location_long = get_post_meta($post->ID,'wp_gp_longitude',true);
?>
['<a href="<?php the_permalink();?>"><?php the_title(); ?></a>', <?php echo $location_lat; ?>, <?php echo $location_long; ?>, 1],
<?php } }?>
];