自2018年10月18日起,高德开发者论坛除车机板块外,其他板块将停止发帖与维护,如您有使用问题请 提交工单 联系我们,感谢您的理解。

查看: 1198|回复: 3
打印 上一主题 下一主题

【云图】如何设置微信里的全国实体店地图?

[复制链接]
最佳答案
1 

11

主题

15

帖子

142

积分

版主

Rank: 7Rank: 7Rank: 7

积分
142
跳转到指定楼层
楼主
发表于 2014-8-27 14:46:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
商家福利!如何提高微信公众平台的粉丝数?如何更好地与粉丝互动?如何为客户提供更好的网络服务?
答案是,为自己的微信公众平台,添加地图功能。有了地图,您的用户能更好更快地找到您实体店的地址,快捷地查询路线。不同实体店还可以添加不同的电话号码,让用户一键拨号,增强互动增强体验。
什么什么,您不懂微信?不要紧,本文详细讲述了如何设置微信公众平台,如何将实体店地图添加到微信公众平台中。
什么什么,您不懂开发不懂地图?不要紧,高德提供如下服务:
1、高德【云图】,提供实体店位置、照片、电话、名称等的存储、显示与检索。
2、高德【URI API】,提供定位、驾车、搜周边等地图功能。
效果图:

商家如何在微信上开启地图功能?解决方案请看本文~
----------------------------------------------------------------------------
一、微信的准备
1、登录微信公众平台:https://mp.weixin.qq.com
2、点击功能->高级功能->编辑模式
3、自定义菜单->设置
4、添加菜单与子菜单,选择链接方式。
放入自己的地图链接:http://www.amfaqua.com/map/amf.html
链接是网站地图,网站地图如何做,在第三部分会介绍。

5、大功告成,看看效果!

二、微信效果展示
1、关注公众微信号:AMF400-6789-122
2、点击关于产品 -> 实体店地图

3、跳转到实体店地图(地图做法在第三部分)

4、地图上的麻点图,就是实体店分布图。点击地图上的小红点,弹出信息窗口。
点击电话,可以直接调起打电话服务。
点击到这里去,可以跳转到高德mobile地图。

6、点击右上角的列表模式,可是列出每个城市的实体店列表。
点击左边的列表,可以进行城市切换。
点击电话,调起打电话服务。
点击到这里去,调起高德mobile地图。

三、【云图】与高德mobile地图
1、申请一个开发者key:http://developer.amap.com/key


2、登录云图,点击新建地图

3、导入您的实体店数据
  1. name,address,tel,pic
  2. 河南鹤壁旗舰店,河南省鹤壁市淇滨区鹤煤大道西段建业森林半岛,18810067778,
  3. 苏州邻瑞店,江苏省苏州市工业园区邻瑞广场三层,18505121300,http://www.amfaqua.com/uploads/allimg/131230/1-131230152K1504.jpg
  4. 临汾鼓楼店,山西省临汾市尧都区鼓楼广场步行街,15388570002,http://www.amfaqua.com/uploads/allimg/130904/1-130Z4002334543.jpg
  5. 北京三里屯店,北京朝阳区三里屯SOHO三号楼3115,13146542304,http://www.amfaqua.com/uploads/allimg/130916/1-1309161J929643.jpg
  6. 北京朝园店,北京朝阳公园西2门朝园市场1165号,010-57900212,http://www.amfaqua.com/uploads/allimg/130826/1-130R6144K0c8.jpg
  7. 北京和平里店,北京东城区和平里中街六区6号楼底商-3,010-84211868,http://www.amfaqua.com/uploads/allimg/130626/1-1306261A359553.jpg
  8. 北京方恒店,北京市朝阳区望京方恒购物中心一层入口,010-57116389,http://www.amfaqua.com/uploads/allimg/131008/1-13100QI236409.jpg
  9. 北京富力城店,北京朝阳区东三环富力广场购物中心地下一层,13601233181,http://www.amfaqua.com/uploads/allimg/140217/1-14021F93U0254.jpg
  10. 北京蓝港店,北京市朝阳区蓝色港湾国际商区L-K161(M层),13264336352|18600937784,http://www.amfaqua.com/uploads/allimg/130826/1-130R6134555105.jpg
  11. 北京居然店,北京市海淀区西四环世纪金源北楼居然之家一层,13910152440,http://www.amfaqua.com/uploads/allimg/130829/1-130R9162P02T.jpg
  12. 北京蓝景店,北京市海淀区北三环蓝景丽家一层入口,13910152440,http://www.amfaqua.com/uploads/allimg/130829/1-130R9162U4395.jpg
  13. 北京欧美汇店,北京海淀区中关村欧美汇购物中心一层,010-56420518,http://www.amfaqua.com/uploads/130410/1-1304101RTa34.jpg
  14. 天津绿游店,天津市滨海新区泰达绿游天地购物中心215号,13752669203,http://www.amfaqua.com/uploads/allimg/130626/1-1306261F2424P.jpg
  15. 北京朝阳大悦城店,北京朝阳区青年路大悦城购物中心三层必胜客对面,010-57187606,http://www.amfaqua.com/uploads/allimg/140217/1-14021GA534M0.jpg
  16. 南通中南城店,江苏省南通市崇川区中南城购物中心4层,13255247999,http://www.amfaqua.com/uploads/allimg/130626/1-1306261H215P1.jpg
复制代码


4、点击预览,就能看见您的实体店地图啦

5、云图和高德mobile的代码,请大家查看第四部分。
或者查看上一篇教程《如何制作AMF生态鱼缸实体店分布图》:http://www.cnblogs.com/milkmap/p/3778398.html

四、效果与源代码
源代码:
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
  6. <title>AMF海水农场实体店</title>
  7. <link rel="stylesheet" type="text/css" href="amf.css" />
  8. <script language="javascript" src="http://webapi.amap.com/maps?v=1.2&key=【您的key】"></script>
  9. </head>
  10. <body onLoad="mapInit()">
  11.     <div class="header clearfix">
  12.         <select onchange="getType(this.options[this.selectedIndex].text)" >
  13.             <option>北京</option>
  14.             <option>天津市滨海新区</option>
  15.             <option>河南省鹤壁市</option>
  16.             <option>江苏省苏州市</option>
  17.             <option>江苏省南通市</option>
  18.             <option>山西省临汾市</option>
  19.             <option>全国</option>
  20.         </select>
  21.         <div class="btnChange">
  22.             <a id="iListBtn" onclick="display('list','iMapBtn');" href="javascript:void(0);">列表模式</a>
  23.             <a id="iMapBtn" style="display:none;" onclick="display('map','iListBtn');" href="javascript:void(0);">地图模式</a>
  24.         </div>
  25.     </div>
  26.     <div id="map" class="clearfix"></div>
  27.     <div id="list" style="display:none;">正在读取数据……</div>
  28. </body>
  29. <script language="javascript">
  30. function display(id1,id2){
  31.     document.getElementById('map').style.display = 'none';
  32.     document.getElementById('list').style.display = 'none';
  33.     document.getElementById('iListBtn').style.display = 'none';
  34.     document.getElementById('iMapBtn').style.display = 'none';
  35.     document.getElementById(id1).style.display = 'block';
  36.     document.getElementById(id2).style.display = 'block';
  37.     if (id1 === 'map' && mapObj) {
  38.         mapObj.setFitView();
  39.     }
  40. }
  41. var mapObj;
  42. var cloudDataLayer;
  43. var cloudSearch;
  44. var pBeijing = new AMap.LngLat(116.38298,39.955543);
  45. //初始化地图对象,加载地图
  46. function mapInit(){
  47.     mapObj = new AMap.Map("map",{
  48.     resizeEnable: true,
  49.     center: pBeijing, //地图中心点
  50.     level:12  //地图显示的比例尺级别
  51.     });
  52.     myCloudList("北京");
  53. }
  54. //云图加载列表
  55. function myCloudList(id){
  56.     //列表
  57.     mapObj.plugin(["AMap.CloudDataSearch"], function() {
  58.         //绘制多边形
  59.         var arr = new Array();
  60.         arr.push(new AMap.LngLat(75.585938,52.696361));
  61.         arr.push(new AMap.LngLat(134.472656,53.956086));
  62.         arr.push(new AMap.LngLat(129.726563,16.467695));
  63.         arr.push(new AMap.LngLat(81.914063,20.13847));
  64.         arr.push(new AMap.LngLat(75.585938,52.696361));
  65.         var searchOptions = {
  66.             keywords: id,
  67.             pageSize:100
  68.         };
  69.         cloudSearch = new AMap.CloudDataSearch('53956704e4b04192f1f4e43d', searchOptions); //构造云数据检索类
  70.         AMap.event.addListener(cloudSearch, "complete", cloudSearch_CallBack); //查询成功时的回调函数
  71.         AMap.event.addListener(cloudSearch, "error", errorInfo); //查询失败时的回调函数
  72.         cloudSearch.searchInPolygon(arr); //多边形检索
  73.     });
  74. }
  75. var markers = new Array();
  76. var windowsArr = new Array();
  77. //添加marker和infowindow     
  78. function addmarker(i, d){  
  79.     var lngX = d._location.getLng();  
  80.     var latY = d._location.getLat();  
  81.     var IconOptions = {
  82.         image : "fish.png",
  83.         size : new AMap.Size(32,32),
  84.         imageSize : new AMap.Size(32,32),
  85.         imageOffset : new AMap.Pixel(-16,0)
  86.     };
  87.     var myIcon = new AMap.Icon(IconOptions);
  88.     var markerOption = {  
  89.         map:mapObj,  
  90.         icon: myIcon,   
  91.         offset: new AMap.Pixel(-16,-32),   
  92.         position:new AMap.LngLat(lngX, latY)   
  93.     };              
  94.     var mar = new AMap.Marker(markerOption);
  95.     markers.push(new AMap.LngLat(lngX, latY));  
  96.   
  97.     var infoWindow = new AMap.InfoWindow({  
  98.         content: "<h3>" + d._name + "</h3>" + "<img style=\"width:280px;height:180px;overflow:hidden;\" src='" + d.pic + "' /><p>地址:" + d._address + "</p>" + "<p>电话:<a href=\"tel:" + d.tel + "\">" + d.tel + "</a></p><p style=\"text-align:right\"><a href='http://mo.amap.com/?q=" + d._location.getLat() + "," + d._location.getLng() + "&name=" + d._name + "'>到这儿去</a></p>",
  99.         size:new AMap.Size(280, 0),  
  100.         autoMove:true,  
  101.         offset:new AMap.Pixel(0,-30),
  102.         closeWhenClickMap: true        
  103.     });   
  104.     windowsArr.push(infoWindow);     
  105.     var aa = function(){infoWindow.open(mapObj, mar.getPosition());};   
  106.     AMap.event.addListener(mar, "click", aa);   
  107. }
  108. //回调函数-成功
  109. function cloudSearch_CallBack(data) {
  110.     clearMap();
  111.     var resultStr="";
  112.     var resultArr = data.datas;
  113.     var resultNum = resultArr.length;
  114.     for (var i = 0; i < resultNum; i++) {
  115.         resultStr += "<div class=\"item\">";
  116.         resultStr += "<h3>" + (i+1) + "、" + resultArr[i]._name + "</h3>";
  117.         resultStr += "<p>地址:" + resultArr[i]._address + "</p>";
  118.         resultStr += "<p>电话:<a href=\"tel:" + resultArr[i].tel + "\">" + resultArr[i].tel + "</a></p>";
  119.         resultStr += "<p>地图:<a href='http://mo.amap.com/?q=" + resultArr[i]._location.getLat() + "," + resultArr[i]._location.getLng() + "&name=" + resultArr[i]._name + "'>到这里去</a></p>";
  120.         resultStr += "</div>";
  121.         addmarker(i, resultArr[i]); //添加大标注
  122.     }
  123.     if (document.getElementById('map').style.display !== 'none') {
  124.         mapObj.setFitView();
  125.     }
  126.     document.getElementById("list").innerHTML = resultStr;
  127. }
  128. //回调函数-失败
  129. function errorInfo(data) {
  130.     resultStr = data.info;
  131.     document.getElementById("list").innerHTML = resultStr;
  132. }
  133. //清空地图
  134. function clearMap(){
  135.     mapObj.clearMap();
  136.     document.getElementById("list").innerHTML = '正在读取数据……';
  137. }
  138. //索引云图
  139. function getType(iPrivance){
  140.     if(iPrivance=="全国"){
  141.         if (document.getElementById('map').style.display !== 'none') {
  142.             mapObj.setZoomAndCenter(4,new AMap.LngLat(114.433594,33.651208));
  143.         }
  144.         myCloudList('');
  145.         var op={
  146.             query:{keywords:""}
  147.         };
  148.         cloudDataLayer.setOptions(op);
  149.     }else{
  150.         myCloudList(iPrivance);
  151.         var op={
  152.             query:{keywords:iPrivance}
  153.         };
  154.         cloudDataLayer.setOptions(op);
  155.         placeSearch(iPrivance);
  156.     }
  157. }
  158. //城市查询
  159. function placeSearch(id) {
  160.     var MSearch;
  161.     mapObj.plugin(["AMap.PlaceSearch"], function() {
  162.         MSearch = new AMap.PlaceSearch({ //构造地点查询类
  163.             pageSize:1,
  164.             pageIndex:1,
  165.             city:"" //城市
  166.         });
  167.         AMap.event.addListener(MSearch, "complete", keywordSearch_CallBack);//返回地点查询结果
  168.         MSearch.search(id); //关键字查询
  169.     });
  170. }
  171. //城市查询后定位
  172. function keywordSearch_CallBack(data) {
  173.     var iPoint = data.poiList.pois[0].location;
  174.     mapObj.setZoomAndCenter(10,iPoint);
  175. }
  176. </script>
  177. </html>
复制代码



效果请关注【AMF海水农场】微信公众号进行查看。



回复

使用道具 举报

最佳答案
0 

1

主题

14

帖子

640

积分

高级会员

Rank: 4

积分
640
沙发
发表于 2014-9-5 17:38:52 | 只看该作者
感谢分享。商家福利呀。支持一下
回复 支持 反对

使用道具 举报

最佳答案
0 

1

主题

14

帖子

45

积分

新手上路

Rank: 1

积分
45
板凳
发表于 2014-9-10 10:36:41 | 只看该作者
太强大了 好好学习
正在准备弄一个服务点的项目
回复 支持 反对

使用道具 举报

最佳答案
0 

0

主题

4

帖子

14

积分

新手上路

Rank: 1

积分
14
地板
发表于 2014-9-13 09:14:57 | 只看该作者
学习一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|高德开发者论坛

Copyright ©2014 高德开发者论坛.All Rights Reserved |京ICP证070711号

意见反馈 常见问题 服务条款 联系我们
快速回复 返回顶部 返回列表