多说是国内一款比较流行的评论系统。
多说很容易同现有网站融合,异步加载评论。但多说最大的优点是, 用户比较多,因此方便各个博主之间的互动。
不过多说的主要缺点有两个:
- 虽然用了一些HTML5、CSS3特性,但是感觉界面不太美观,而且CSS样式修改起来比较麻烦。
- 用户量比较大,因此偶有宕机导致评论无法加载。
那怎么样能够吸收多说的优势,同时避免上面两个不足呢?
其实只要使用Typecho/Wordpress自带的评论系统,同时能够获取多说访客的基本信息,那么以上的目的就达到了。关键是怎么获取访客的基本信息呢?
仔细研究了两天多说的评论代码,终于找到了解决方案。
只需要用jQuery向多说的相应接口发送一次GET请求就可以了,请求的地址是http://disidu.duoshuo.com/api/threads/listPosts.json?thread_key=100&require=visitor
获得一个json文件,有一个字段是visitor,就是对应的访客信息。需要注意的是,需要把disidu.duoshuo.com更换成自己的多说二级域名。
余下的就是把获取的信息,填入评论框就好了,下边是js代码示例。
$.ajax({url:"http://disidu.duoshuo.com/api/threads/listPosts.json?thread_key=100&require=visitor",
xhrFields: {
withCredentials: true
},
success:function(data,status){
if(data.visitor.user_id!="0"){
$("#author").val(data.visitor.name);
$("#mail").val(data.visitor.email);
$("#url").val(data.visitor.url);
$("#response").text("欢迎来自多说的朋友,"+data.visitor.name);
}
}
});