解决Gitment初始化评论时validation failed

最近替换了Gitment做为评论系统,在初始化评论时,总是报validation failed,记录了一下解决方案。

我们知道Gitment是基于Github Issues的一个评论系统。

根据网上检索到的一些信息Issues的labels最大长度限制是50个字符,而Gitment默认将location.href当做了labels,如果博客是中文标题,转义后绝大部分的labels都将超过50个字符。

知道原因后,尝试只解析中文标题作为labels,但发现6个中文字符,转义后已经54个字符长度了,囧!
所以这块肯定不靠谱。

为了永久性的解决这个问题,肯定不能使用标题做为labels,翻了翻模板文件,看到除了标题外,好像就标签和日期可以使用,最后决定使用日期做为标题,找到我们的Gitment配置脚本,具体修改如下:

1
2
3
4
5
6
7
// 此处参考代码主题是Next,模板使用的是swig, 不同主题模板语言不同,注入变量方法不同,请类推。
var gitment = new Gitment({
//精确到秒,同一天有多篇文章也不怕
id: 'page_s_blog_{{ date(page.date, "YYYY-MM-DD hh:mm:ss") }}',
...
})
gitment.render('comment')