一款超好用的第三方评论插件--Gittalk

使用GITALK的背景:

1. 最近在做一个基于Java的个人博客系统,已经基本完工了,突然发现怎么没有评论的操作,如果再从头开始从数据库开始写的话,花费的代价有点大,于是乎我就在网上寻找一款适合我的第三方评论插件,第一次我找到了“畅言”,结果很令人失望,因为我的网站没有备案,所以无法使用“畅言”。于是Gitalk就映入了我的眼帘。

2. Gitalk 最初推出来,应该是想配合在 github 上建博客,方便添加评论功能的。随着其他评论插件的没落,Gitalk 就火起来了。Gitalk 是一个基于 Github Issue 和 Preact 开发的评论插件。它除了支持 Hexo 外,还支持 java,php 等语言开发的博客。
详情请参考:官网
)
)

使用方法:

1.首先需要到GitHub上去新建一个仓库用于存放评论的内容:

创建仓库

 2.在设置中打开isue功能:
设置

默认是打开的


Issues

3.需要注册一个Github Application具体步骤如下:


博客评论

注意两个URL就是你网站的域名。应用名称随便写,描述随便写。

(2)完成之后便到了如下页面:


image.png

其中Client ID 和 Client Secret是我们需要的东西。
 4.如上步骤完成之后,接下来你就会体验到Gitralk 的方便之处:

只需要将如下代码引入你想添加评论的 html 或者 jsp 页面中就可以使用了

<-- 引入 -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.css">
  <script src="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.min.js"></script>

<-- 添加一个容器-->
<div id="gitalk-container"></div>

<-- 生成 gitalk 插件-->
var gitalk = new Gitalk({
  clientID: '56f73fbc5e79a466ea62', //Client ID

  clientSecret: '26d8eb4f3b0de9ce02382103ffc32ba34c4671f4', //Client Secret

  repo: 'blogtalk',//仓库名称
  owner: 'smfx1314',//仓库拥有者
  admin: ['smfx1314'],
  id: location.href,      // Ensure uniqueness and length less than 50
  distractionFreeMode: false  // Facebook-like distraction free mode
})

gitalk.render('gitalk-container')

设置

  • clientID String

    必须. GitHub Application Client ID.

  • clientSecret String

    必须. GitHub Application Client Secret.

  • repo String

    必须. GitHub repository.

  • owner String

    必须. GitHub repository 所有者,可以是个人或者组织。

  • admin Array

    必须. GitHub repository 的所有者和合作者 (对这个 repository 有写权限的用户)。

  • id String

    Default: location.href.

    页面的唯一标识。长度必须小于50。

  • number Number

    Default: -1.

    页面的 issue ID 标识,若未定义number属性则会使用id进行定位。

  • labels Array

    Default: ['Gitalk'].

    GitHub issue 的标签。

  • title String

    Default: document.title.

    GitHub issue 的标题。

  • body String

    Default: location.href + header.meta[description].

    GitHub issue 的内容。

  • language String

    Default: navigator.language || navigator.userLanguage.

    设置语言,支持 [en, zh-CN, zh-TW]。

  • perPage Number

    Default: 10.

    每次加载的数据大小,最多 100。

  • distractionFreeMode Boolean

    Default: false。

    类似Facebook评论框的全屏遮罩效果.

  • pagerDirection String

    Default: 'last'

    评论排序方式, last为按评论创建时间倒叙,first为按创建时间正序。

  • createIssueManually Boolean

    Default: false.

    如果当前页面没有相应的 isssue 且登录的用户属于 admin,则会自动创建 issue。如果设置为 true,则显示一个初始化页面,创建 issue 需要点击 init 按钮。

  • proxy String

    Default: https://cors-anywhere.herokuapp.com/https://github.com/login/oauth/access_token.

    GitHub oauth 请求到反向代理,为了支持 CORS。 为什么要这样?

  • flipMoveOptions Object

    Default:

      {
        staggerDelayBy: 150,
        appearAnimation: 'accordionVertical',
        enterAnimation: 'accordionVertical',
        leaveAnimation: 'accordionVertical',
      }
    

    评论列表的动画。 参考

  • enableHotKey Boolean

    Default: true.

    启用快捷键(cmd|ctrl + enter) 提交评论.

注意:第一次进入时评论模块加载不出来,需要注册Github Application的账号登录评论模块后刷新页面,就可以正常使用了。

四,我博客的实例展示:

随便点击一篇文章进入,底部就会出现评论模块:

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天看到自己关注的公众号所推送的一篇文章《对孩子最大的伤害是“超前教育”》。文章根据一个近前的案例引出,提出...
    匪啻于兹阅读 280评论 0 0
  • 今日去登黄山嗯,感悟很多,我前面走的很快,后来结果走错了方向,比别人还多走了好几百米路,可谓是方向不对,努力白费。...
    洮南远方文学阅读 208评论 0 1
  • 生命就像一条大河, 时而宁静,时而疯狂。 现实就像一把枷锁, 把我捆住,无法挣脱。 这谜一样的生活锋利如刀, 一次...
    贾小呆520阅读 855评论 0 0
  • 很想用一把尺子 来丈量黑与夜的间隙 奈何天平失去了准心 曾经以为 心与心之间不用测量 因为都是跳动的红 我时常想目...
    云中飘舞阅读 343评论 12 31
  • 中午,随永洁一起去禾儿秀吃饭。我下单,三椒沸腾鱼,她红包给我,因为是她要请我。 不管。 禾儿秀的装饰有意思,说:“...
    鲁长安阅读 1,628评论 1 0