Jekyll博客添加Valine评论

关于github搭建jekyl博客,在这里不做过多描述,详情参考:

  1. 百度搜索关键字:github搭建jekyll博客
  2. 官网:https://www.jekyll.com.cn

我的博客用的模板是:jekyll-theme-next,本篇文章就是基于这个模板添加的。

关于评论插件:

  1. Disqus: 需要翻墙
  2. 网易云评论:需要自己的域名
  3. Duoshuo: 挂了
  4. gitment:逼格太高

其他评论插件没有用过,最后发现了Valine,一款快速、简洁且高效的无后端评论系统。
详情请访问官网:https://valine.js.org
这个评论系统是基于LeanCloud的,对Jekyll的博客是支持的,官网网址:https://leancloud.cn

获取 APP ID 和 APP KEY

  1. 点击这里登录或注册Leancloud
  2. 点这里创建应用,应用名看个人喜好。

  1. 选择刚刚创建的应用>设置>选择应用 Key,然后你就能看到你的APP ID和APP KEY了,参考下图:

  1. 为了您的数据安全,请填写应用>设置>安全设置中的Web 安全域名,如下图:

在博客里DIY评论系统valine页面

在 _includes_third-party\comments里面添加一个文件valine.html

在文件里添加代码:

{% unless site.duoshuo_shortname
or site.disqus_shortname
or site.hypercomments_id
or site.gentie_productKey
or site.duoshuo and site.duoshuo.shortname %}
{% if site.valine_comment.enable %}
<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script>
<script src='//unpkg.com/valine/dist/Valine.min.js'></script>
<script>
new Valine({
el: '#comments',
app_id: '{{ site.valine_comment.leancloud_appid }}', //这里变量的取值在网站配置文件里_config.yml
app_key: '{{ site.valine_comment.leancloud_appkey }}', //这里变量的取值在网站配置文件里_config.yml
placeholder:'{{ site.valine_comment.placeholder }}' //这里变量的取值在网站配置文件里_config.yml
});</script>
{% endif %}
{% endunless %}

在这几行代码做了注释,主要是为了在博客配置文件中_config.yml添加相关变量的取值。

修改_config.ym配置

在_config.yml添加变量app_id,app_key, placeholde的值,关于取值传递到valine.html,是通过构建jekyll变量,具体代码如下:

valine_comment:
enable: true
# app_id
leancloud_appid: knEe7Rc6frt1ygf3gAwBTbnB-gzGzoHsz
# app_key
leancloud_appkey: 2yxyYCewv3lUoTOpl77PT0QX
# placeholde
placeholder: “Just go go"

调用valine.html

由于前面创建了valine.htm,需要jekyll博客能够运行这个页面的代码,使评论框显示在每篇文章的页面,需要在_includes_third-party\comments\index.html里面添加代码:

{% include _third-party/comments/valine.html %}

在_includes/_partials/comments.html里面插入代码:

{% elsif site.valine_comment.enable %}
<div id="vcomments"></div>

注意事项:

  1. 本篇文章只具有参考意义,有什么不明白的可以在jekyll和valine查找相关内容
  2. 需要对自己的博客构架了解后,自行DIY
  3. 效果请点击:进击的野草:https://wildgrass.top 中任何一篇文章,查看最下方评论框

Jekyll博客添加Valine评论的更多相关文章

  1. 给jekyll博客添加搜索功能

    使用SWIFTYPE为jekyll博客添加搜索引擎 步骤 1.首先去swiftype注册一个账号 2.接着添加自己想要配置的网站地址并为新设定的引擎添加一个名字(非会员只能设置一个引擎). 3.收到验 ...

  2. 在Jekyll博客添加评论系统:gitment篇

    最近在Github Pages上使用Jekyll搭建了个人博客( jacobpan3g.github.io/cn ), 当需要添加评论系统时,找了一下国内的几个第三方评论系统,如"多说&qu ...

  3. hexo博客添加gitalk评论系统

      经过了一天的折腾,我终于为自己的博客添加上了评论系统.坦率的讲,为什么网上那么多方案我还要自己写一篇博客,那就是因为他们说的都有bug,所以我要自己总结一下.   我选用的是gitalk评论系统, ...

  4. 给jekyll博客添加天气插件

    layout: post title: 给博客添加天气插件 date: 2020-04-26 author: Dapenson header-img: img/post-bg-debug.png ca ...

  5. 为博客添加 Gitalk 评论插件

    背景 Disqus需要翻墙才能正常使用 畅言有广告 2种评论系统都很难统一管理 优化 使用Gitalk评论插件 , gitalk 使用 Github 帐号登录,界面干净整洁,支持 MarkDown语法 ...

  6. Hexo 博客快速整合gitalk组件,给静态博客添加动态评论功能!

    什么是 hexo-plugin-gitalk

  7. jekyll 添加 Valine 评论

    本文告诉大家如何在自己搭建的静态博客添加 Valine 评论.在这前,我基本都是使用 多说,但是多说gg啦,所以就在找一个可以替换的评论 本来 Disqus是很好的,但是在国内很难打开,所以我就需要一 ...

  8. 【干货】2个小时教你hexo博客添加评论、打赏、RSS等功能 (转)

    备注:该教程基于Hexo 2.x版本,目前Hexo是3.x版本,照本教程实现有可能会出现404错误,笔者目前还未找时间去解决,待笔者找时间解决该问题后,再写一篇该问题的解决教程,给各位读者带来困扰,还 ...

  9. 在GitLab pages上快速搭建Jekyll博客

    前一段时间将我的Jekyll静态博客从github pages镜像部署到了 zeit.co(现vercel)上了一份,最近偶然发现gitlab pages也不错,百度也会正常抓取,于是动手倒腾,将gi ...

随机推荐

  1. MacBook Pro App Store无法下载和更新软件解决方案

    环境:MacBook Pro 2017 系统:MacOS 10.14 问题:在App Store中无法下载和更新软件,输入App Store密码后,弹出如下对话框 咨询苹果官方技术支持电话:400-6 ...

  2. OAuth授权 | 把这一篇丢给他

    OAuth授权 一.背景 上一篇我们介绍了单点登录(SSO),它能够实现多个系统的统一认证.今天我们来谈一谈近几年来非常流行的,大名鼎鼎的OAuth.它也能完成 统一认证,而且还能做更多的事情.至于O ...

  3. Java面试题整理---Redis篇

    1.redis支持五种数据结构类型?   2.redis内部结构?   3.redis持久化机制?   4.redis集群方案与实现?   5.redis为什么是单线程的?   6.redis常见回收 ...

  4. Flask实战-留言板-使用Faker生成虚拟数据

    使用Faker生成虚拟数据 创建虚拟数据是编写Web程序时的常见需求.在简单的场景下,我们可以手动创建一些虚拟数据,但更方便的选择是使用第三方库实现.流行的python虚拟数据生成工具有Mimesis ...

  5. Cesium 学习笔记

    Entity API 1,和 fill属性不太一样,outline没有对应的材质配置,而是用两个独立的属性outlineColor和outlineWidth. 注意outlineWidth属性仅仅在非 ...

  6. 4.JAVA基础复习——JAVA中的构造函数与this关键字

    构造函数:构建创造对象时调用的函数 特点: 1.函数名与类名相同. 2.不用定义返回值类型. 3.没有具体的返回值. public class Demo { private int age; priv ...

  7. flutter packages.

    connectivity This plugin allows Flutter apps to discover network connectivity and configure themselv ...

  8. axure原型设计

    在上一个学期的学习中,我们已经初步学习了axure的使用方法,它可以为负责定义需求设计,功能和界面的人员能快速设计出所需产品. 引入:在我们想为软件设计原型的时候,纸质原型很难表达交互的界面,与此同时 ...

  9. Python网络爬虫入门篇

    1.  预备知识 学习者需要预先掌握Python的数字类型.字符串类型.分支.循环.函数.列表类型.字典类型.文件和第三方库使用等概念和编程方法. 2. Python爬虫基本流程 a. 发送请求 使用 ...

  10. javascript实现继承的三种方式

    一.原型链继承  function Parent(){} function Child(){} Child.prototype = new Parent(); 通过对象child的prototype属 ...