10月 02

多说评论迁移

Published at Oct 02, 2015 • DuoShuo Blog

博客迁移,是一件挺麻烦的事情,涉及到文章数据和评论数据。我的博客平台使用的多说评论系统,在我迁移评论的时候,也遇到了一些障碍。但是,最终还是比较完美地迁移成功。讲一下我迁移的方案吧

多说评论迁移准备工作

先去多说后台管理系统,寻找迁移方法。果然,在工具里面找到了导入数据,导出数据功能,然后选择包含评论数据,并导出评论。之后,会得到一个Json格式的文件

多说导入导出数据

导出的json文件没有格式化,随便找个json在线格式化网站,格式化一下,来看看里面是什么内容。我们来选其中一个个体看一下

json个体

不难看出,post_id就是这条评论的全局唯一的标识,thread_id是评论所在网页的全局唯一标识(即文章的id),message即具体评论的内容,下面的author_id,author_email等等就是评论人的相关多说账号信息了

多说官网文档也是说的明明白白的,一目了然

大体方案就出炉了

多说评论迁移方案

既然是迁移评论,那么该评论的全局id肯定还是原来的,变的就是文章id了。因为换了新域名嘛,文章id变换了,只要把json文件里面评论的原文章id(就是thread_id)变成相应的新文章id就行啦

那么,怎么获取新文章的thread_id呢。我当时想到的最笨的方法,去新文章页面下面随便评论一下,从新域名的多说后台系统导出评论数据,打开看一下,thread_id不全都有了吗

所以,具体的方案就是:从old.com(老域名)的多说后台系统导出评论数据,找到old.com/first-post文章的thread_id;在对应的新文章new.com/first-post下随便评论,导出评论数据,获得新的thread_id;用新id覆盖老id;最后在新域名的博客多说后台系统导入json评论数据就ok了

亲测可行的

至于,你想手动覆盖json文件里面的old thread_id,还是写脚本对josn文件操作进行覆盖,看你评论数量而定吧。怎么省事,怎么搞

对多说的吐槽

寻找评论迁移方案的时候,先在多说开发者中心尝试看看能不能找到,结果是没找到。而且,我觉的多说是不是没人维护了???很多人在下面提问,就是没有技术支持的回答

还有,在多说后台管理系统的文章管理页面,多说永远只呈现给我一页的文章数据,甚至有很多内网测试的文章在上面,什么127.0.0.1:8080/first-post这一类。想翻看第二页更多的文章,根本做不到,只有删除第一页文章才行

我还想换一个评论系统disqus,由于它的加载比较慢,账号不支持国内许多社交账号,还是放弃了

不得不说,多说成功的原因就是:接天朝地气吧。界面做的也比disqus好看些。接地气,而且好看的东西果然还是很受欢迎的

多数的后台数据管理,我就不敢恭维了。估计不止我一个人在吐槽吧

放假在实验室,没事就喜欢瞎折腾,不写了,国庆快乐啦!


2015-11-25号更新:

多说今天上线新代码,又造成了一大批的用户的bug:

duoshuo-bug

11-24号之前的评论在我的站点显示不了。虽然中午12点时,多说称已经修复了bug。我检查了我的站点,发现大部分页面恢复正常,仍有一个页面处于bug中

搭建博客的意义不应该在于不停地被评论系统所折腾,我决定转到Disqus,重新开始吧