前言

多说自裁了,换了Disqus后感觉网站速度有影响,Disqus更换方法见博客评论从多说迁移到Disqus

虽然也没几个人来这评论,但又不能直接把评论系统给干掉,总有那么一点虚荣心作祟,所以本站的评论系统又换到了网易云跟帖。

更换步骤

评论系统都是跟着主题的,所以需要的修改都是在主题文件中。

如果你用的是next主题,那恭喜你,主题作者已经集成好了,只需要到云跟帖申请自己的productKey就可以了,如果像本站一样使用maupassant这种主题,那得自己折腾下。

第一步:申请网易云跟帖ID

登录网易云跟帖网站,账号注册登录什么的自行解决,网易邮箱,微博什么的应该大家都有,登录后点击后台管理,设置你的站点名称,站点网址等内容,然后点击获取代码就可以对皮肤,功能等进行基本设置,获取通用代码或者web代码,其中就包含你设置网站的productKey,这信息和代码一会儿要用在主题中。

云跟帖官网的帮助示例

若你的站点网址没有被百度收录的话,会出现域名未被收录的提示。此时你就需要联系云跟帖的后台小伙伴了,将你的域名信息向他们反映下,他们就会把你的域名添加进去的。

第二步:接入Hexo

以本站用的maupassant主题为例,为了方便,把云跟帖的productKey做成配置化,顺手把多说那些信息给清理掉。

更改配置化

评论系统配置化在主题配置_config.yml中,为了能看得明白一些,把原作者的那种配置结构改了改【纯属蛋疼,不是必须的】

1
2
3
4
5
6
##  评论系统选择
comments:
yungentie:
productKey: ##自己的云跟帖key填这
disqus:
shortname: ## Your disqus_shortname, e.g. username

顺手把duoshuo,swiftype那些自己不需要的配置也清理了一把,atom在主题目录下查找相关词,相关代码也清理了,这里就不贴了,有洁癖的可以自己去折腾。

修改comments.jade

该模板文件位置在themes\maupassant\layout\_partial\comments.jade,打开后可见多说和Disqus的判断代码,用不到了,直接把多说部分去掉,换成云跟帖的

1
2
3
4
5
6
7
8
9
10
11
if theme.comments.yungentie
div(class="cloud-tie-wrapper",id="cloud-tie-wrapper")
script(src="https://img1.cache.netease.com/f2e/tie/yun/sdk/loader.js")
script.
var cloudTieConfig = {
url: document.location.href,
sourceId: "",
productKey: "#{theme.comments.yungentie.productKey}",
//因为我前面改了主题配置结构,所以上面就一级一级定位productKey了,根据自己的规则写
target: "cloud-tie-wrapper"
};

这样保存就能引用网易云跟帖了。

可能你发现我这里贴的代码和上面截图里的不一样,那是因为里的代码是通用代码,截图那个是web代码,通用代码少了那么一行。

注意事项

因为网易云跟帖是绑定域名的,所以本地测试的时候如果要看到效果可以做hosts劫持,Windows系统在%Drivers%\etc\hosts里写上如:

1
127.0.0.1 云跟帖绑定的域名

然后本地使用绑定的域名就能显示云跟帖评论框了,其他操作系统自行Google。如果站点有多说等评论,可以通过云跟帖后台进行导入,支持json或者xml格式的文件,当然,有些导入失败就没办法了。

maupassant主题最新已经集成了云跟帖功能,不过作者集成到after_foot.jade里,在打开首页的时候后台会有一段报错,不影响使用,不想自己折腾的去更新最新版即可。

有什么问题在文章后留言,能解答的我尽量解答。