我做了很多research并找到了几个"解决方案"例如static maps API,只需发送一个指向Gmap的链接即可。但实际上没有办法真正向某人发送谷歌地图吗?
答案 0 :(得分:31)
您自己的研究表明,大多数邮件客户都不会使用iFrame,您认为可以做些什么?
这是故意的。 iFrame和JavaScript是邮件服务不想处理的安全风险。
最好的办法是获取地图的静态图片,并将其embed作为HTML电子邮件中的图片。将超链接放在" full"谷歌地图上的地图。
要在Gmail中手动执行此操作:
href
部分"地图链接到Google地图" 答案 1 :(得分:1)
是的,有一种使用php和javascript的方法,您可以传递静态地图网址,并将其通过表单提交传递并在电子邮件中使用
通过javascript获取当前位置/坐标
var latlon = position.coords.latitude + "," + position.coords.longitude; var img_url = "https://maps.googleapis.com/maps/api/staticmap?center="+latlon+"&zoom=17&size=500x250&sensor=false&key=API_KEY&maptype=roadmap&markers=icon:http://maps.google.com/mapfiles/ms/icons/red-dot.png|"+latlon;
将值传递到输入字段
document.getElementById("map_image").value = img_url;
内部表单输入id = map_image并输入隐藏类型,而不是提交表单并处理下一页的发帖请求
比提交表单后的处理
$map_image_url = $_POST['map_image'];
您可以在电子邮件模板中将其用作img
$EMAILTEMPLATE .= '<img src="'.$map_image_url.'"/>';
答案 2 :(得分:0)
您可以将包含地图参数(Lat,Lgt等)的链接通过电子邮件发送到服务器上的HTML页面,该页面接受带有REST API的地图参数并在浏览器中显示完整地图。唯一的选择是使用静态地图概念。或者都可以使用,请发送静态地图图像,然后在下方发送指向HTML页面的链接,该页面接受参数,准备地图并根据用户的意愿显示真实地图。