Discuz!NT官方社区

首页 » Discuz!NT开发与测试 » Discuz!NT插件开发 » [原创] Discuz!NT2.x 电子地图 插件,让各位久等了![08-03-09补充]
donkeymike - 2008-3-7 14:34:00
功能/用途:在论坛发贴/回贴时,可插入地图信息并标注位置,房地产或其它对于位置描述有详细需求的论坛,非常适用




插件演示地址:http://www.zzgo.net/bbs/showtopic-5836.aspx

发贴效果(基于51ditu.com的API开发制作,让你的论坛可与专业地图站点相媲美)
[attach]8504[/attach]

适用程序:Discuz!NT2.x
插件支持:www.51ditu.com

安装方法:

一、登录论坛后台管理
    1. 论坛 -> 贴子相关-> Discuz!NT代码 -> 添加Discuz!NT代码
        i. 标签:map
        ii. 替换内容:

<div id="maps{RANDOM}" style="position:relative; width:100%; height:350px; border:black solid 1px;"><div align="center" style="margin:12px;"><a href="http://api.51ditu.com/docs/mapsapi/help.html" target="_blank" style="color:#D01E14;font-weight:bolder;font-size:12px;">看不到地图请点这里</a></div></div><script language="javascript">var maps = new LTMaps("maps{RANDOM}" );maps.cityNameAndZoom("baoding",{4});var point = new LTPoint({2},{3});var marker = new LTMarker(point);maps.addOverLay(marker);var text=new LTMapText(point,[20,-2]);text.setLabel(" <b>{1}</b> ");text.setBackgroundColor("#FFFF00");maps.addOverLay(text);var control = new LTStandMapControl();maps.addControl(control);maps.handleKeyboard();maps.handleMouseScroll();maps.moveToCenter(new LTPoint({2},{3}));</script>


.        iii. 例子:随意填写
        iv. 解释:随意填写
        v. 参数个数:4
        vi. 嵌套次数:1
        vii. 参数描述:留空即可
        viii. params默认值:留空即可

    2. 全局 -> 常规选项 -> 搜索引擎优化
        i. [其他头部信息:] 中 添加:
            <script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>

二、修改编辑器模板(templates/default/_editor.htm):

    1. 找到你想插入 [标注位置] 按钮的地方,插入以下代码:(不明白,请查看五、补充/解释)

<!--引入地图JavaScript开始-->
<script language="javascript" src="http://api.51ditu.com/js/ezmarker.js"></script>
<script language="javascript">
        function SetForm(point,zoom){
                var text=prompt("请输入此标注的文字注释","");
                insertText('[map='+point.getLongitude()+','+point.getLatitude()+','+zoom+']'+text+'[/map]');
        }
        function SelectDisplay(){
                var s=document.getElementsByTagName('select');
                for(var i=0;i<s.length;i++)s[i].style.display='';
        }
        function SelectHidden(){
                var s=document.getElementsByTagName('select');
                for(var i=0;i<s.length;i++)s[i].style.display='none';
        }
        var ez=new LTEZMarker("maps");
        ez.setDefaultView(new LTPoint(坐标X轴,坐标Y轴),1);
        ez.setSearch(false);
        ez.setPlaceList(false);
        LTEvent.addListener(ez,"mark",SetForm);
        LTEvent.addListener(ez,"open",SelectHidden);
        LTEvent.addListener(ez,"close",SelectDisplay);
</script>
<!--引入地图JavaScript结束-->


注:坐标的X轴与Y轴是地图显示时的初始位置,比如,如果你希望点击 [标注位置] 按钮后,首先弹出北京地图,
        如何得到这个坐标:
        你可以在我的论坛发个贴子(www.zzgo.Net),点击编辑器上的 [标注位置] 按钮,标注出你希望的初始位置,然后会有对应的Discuz代码插到编辑器里,比如:[map=11639762,3990806,1]北京[/map],标红的两个数,就是你想要的坐标了,将它填入到上面的程序段中就行了
        例子:ez.setDefaultView(new LTPoint(11639762,3990806),1);


三、保存模板 -> 生成,你的地图功能就可以用了!

四、08-03-14日修正了一个错,还有问题,请用论坛短消息联系我,修正后本人会更新此贴,谢谢!


--------------------------------------------------------------------
五、补充/解释:
      ● 对于 二.1 的解释 : 原文:找到你想插入 [标注位置] 按钮的地方,插入以下代码
            比如我想把 [标注位置] 按钮插入到下图这个位置
            [attach]8505[/attach]
            这时就需要切换到对应位置的HTML代码处,将 二.1 的代码贴进去,就OK了

附件: 未标题-2.gif

附件: map.gif
xj79222770 - 2008-3-7 14:55:00
什么东东看一下
xj79222770 - 2008-3-7 14:56:00
你没测试的呀
liujie3308 - 2008-3-7 18:10:00
???????????????????
nellcome - 2008-3-7 18:27:00
对于大地方还是很有用的,对于我们这些小县城就没多大用处了
lishewen - 2008-3-7 20:19:00
很好,支持
wpy126 - 2008-3-7 22:55:00
vvcvc
harbin - 2008-3-7 23:09:00
不错 当下来看看
31918151 - 2008-3-8 0:21:00
感谢分享,试试看
31918151 - 2008-3-8 0:23:00
感谢分享啊
长沙群招收大量斑竹,发展前途巨大
长沙人可别错过
娱乐专用 - 2008-3-8 10:59:00
太需要了!
娱乐专用 - 2008-3-8 11:05:00
能不能用google地图?那个聊天室怎么加的 能分享一下吗?
honfei - 2008-3-8 16:59:00
看一下
boln - 2008-3-8 21:21:00
终于等到了
谢谢楼主分享
e0421 - 2008-3-8 22:03:00
:D :D :D :D :D
zouyi - 2008-3-9 2:43:00
不错:Z
zouyi - 2008-3-9 3:36:00
版主照你的方法做了,怎么不行呀,



最后这步可不可以讲清楚点  1. 找到你想插入 [标注位置] 按钮的地方,插入以下代码:

究竟要放在那个位置呀,找不到


我弄了后出现这样的情况
emperor0216 - 2008-3-9 10:50:00
好像不錯用,來看看
herozdg - 2008-3-9 15:24:00
我等你好久了阿!!!
seejun - 2008-3-9 18:36:00
呵呵。。。
chuckking - 2008-3-9 18:40:00
看看
rabbitzhou - 2008-3-10 0:15:00
需要这个,感谢楼主
海门 - 2008-3-10 0:26:00
又被强爆
xbstudio - 2008-3-10 11:24:00
kankan
紫貂 - 2008-3-10 11:58:00
:Q :D
pures - 2008-3-10 17:12:00
:D 过来看看!
ljnn163 - 2008-3-10 20:21:00
对于大地方还是很有用的,对于我们这些小县城就没多大用处了 :Z
steupwhg - 2008-3-10 20:59:00
看一下
ljnn163 - 2008-3-10 21:04:00
我插入时关不了窗口
leitingge - 2008-3-10 22:07:00
看起来真的不错,感谢楼主!赶快下下来试试!
12345
查看完整版本: [原创] Discuz!NT2.x 电子地图 插件,让各位久等了![08-03-09补充]