帝国cms如果想实现点赞功能其实很简单,因为帝国cms自带顶一下功能,我们直接利用一下这个功能就能轻松实现点赞功能了,当然他的缺点就是点赞之后再点一下不会是取消赞,而是显示您已提交过。这对于自己的网站来说其实是个好事,谁不想自己的网站点赞数量更多……
下面我来总结一下自己在实现首页、列表页和内容页都加上点赞功能的一些经验。虽然帝国默认顶一下功能很多人觉得把标签加上就可以,其实还是会有很多问题的,下面我们一起来看一下。
一、加入了标签但是点击没有反应
问题解决:在</head>前一定要记得加上这段代码:<script type="text/javascript" src="http://www.lidongyan.com/e/data/js/ajax.js"></script>。这是帝国cms本身实现一些js效果和功能必须的文件,所以凡是用到js,页面上都要加上这段代码。
二、加了顶数标签:[!--diggtop--],但是数量不改变
问题原因:这是因为这个标签不是实时的,它必须要在页面刷新之后才会有改变
问题解决:加入实时显示顶数代码:<script src=[!--news.url--]e/public/ViewClick/?classid=[!--classid--]&id=[!--id--]&down=5></script>
三、首页和列表页加上实时显示顶数标签代码点击后数量有时没有变化
这个问题是我后来才发现的,代码写法和内容页一样,但是内容页只要点击后会立即更新顶数,首页和列表页则有时候没有变化,需要刷新一下页面才会更新,注意这里说的只是刷新页面,而不用在后台更新首页和列表页,所以针对这个问题我觉得影响不是很大,解决方法暂时也没有研究,如果有懂的小伙伴欢迎在文章下面评论,让大家都学习一下。
四、总结一下关于顶一下功能的相关代码
1.点赞代码:<a href="JavaScript:makeRequest('[!--news.url--]e/public/digg/?classid=[!--classid--]&id=[!--id--]&dotop=1&doajax=1&ajaxarea=diggnum','EchoReturnedText','GET','');" title="赞"></a>
2.顶数标签代码:[!--diggtop--]
3.实时显示顶数代码:<script src=[!--news.url--]e/public/ViewClick/?classid=[!--classid--]&id=[!--id--]&down=5></script>
4.注意:js调用点赞数量不能用a标签包含比如:
<a href="JavaScript:makeRequest('http://www.lidongyan.com/e/public/digg/?classid=3&id=48&dotop=1&doajax=1&ajaxarea=diggnum','EchoReturnedText','GET','');" ><script src=[!--news.url--]e/public/ViewClick/?classid=[!--classid--]&id=[!--id--]&down=5></script></a> ,这个本来是想实现点击数量就可以加一个赞的,但是后来发现不行,所以就改成了点击“赞”字,后面是数量,这样就可以了。另外,如果想要点击后弹出对话框提示,需要在调用数量外围写上<span id="diggnum"></span>
五、最后给大家亮一下我内容页点赞功能的代码写法
<div class="fl ml20 button1 bg_green">
<a href="JavaScript:makeRequest('http://www.lidongyan.com/e/public/digg/?classid=3&id=48&dotop=1&doajax=1&ajaxarea=diggnum','EchoReturnedText','GET','');" title="如果喜欢请赞一下吧">点赞</a>(<span id="diggnum"><script src=http://www.lidongyan.com/e/public/ViewClick/?classid=3&id=48&down=5></script></span>)
</div>
看完了文章别忘了试验一下效果哦,下面可有现成的试验装置O(∩_∩)O哈哈~
八爷资源网 » 解读帝国cms如何实现点赞功能