当前位置: 首页 > news >正文

好用的博客评论系统 Valine 使用及避坑指南

评论系统,即网站的一个小功能,展示评论内容和用户输入框。开源免费的评论系统可不多,原来很火的"多说"评论系统都关闭了,而Disqus又是国外的访问受限。无意间发现了Valine,挺不错的,分享给大家。

Valine介绍

官网地址:介绍 | Valine 一款快速、简洁且高效的无后端评论系统。

Valine - 一款快速、简洁且高效的无后端评论系统。

Valine 诞生于2017年8月7日,是一款基于LeanCloud的快速、简洁且高效的无后端评论系统。

理论上支持但不限于静态博客,目前已有Hexo、Jekyll、Typecho、Hugo、Ghost 等博客程序在使用Valine。

Valine 目前使用的是Gravatar 作为评论列表头像。但这个有点儿坑,因为这个Gravatar国内访问不到。后面有解决办法。评论的时候,留下所使用的邮箱即可。比如你留下你的qq邮箱,会自动的显示你的qq头像,奇怪的是头像从哪来的?大数据?

Valine使用

由于Valine是基于LeanCloud服务的,数据都在LeanCloud存储。因此需要注册个LeanCloud才能使用。不过注册很简单,且免费开放版提供的1G存储也差不多够用啦。这里推荐下LeanCloud,也可以用来当做一些小项目的存储云服务。

1.注册Leancloud,获取 APP ID 和 APP KEY

在Leancloud用邮箱注册登录,需要实名制认证,邮箱认证。

2.创建Valine应用

命名为 Valine,方案选择开发版,即可以在一定的用量限制下免费运行。

3.进入创建好的应用>设置>选择应用 Key,就能获取到 App ID 和 App Key。

接下来使用就简单啦,只需要在需要的网页下端加入以下js代码即可:

<script src='//unpkg.com/valine/dist/Valine.min.js'></script>
<div id="vcomments"></div>
<script>
new Valine({el: '#vcomments',appId: '21MG1aSIkC71uv7v0NcpKsuk-gzGzoHsz',appKey: 'ESkTqJu5BOJhiSgaZNoAQrVP',placeholder: "你是我一生只会遇见一次的惊喜 ...",avatar:'',//小怪物头像,visitor: true // 阅读量统})
</script>

其中未知名头像都是小怪物(avatar: ‘monsterid’),更多头像选择mp/identicon/monsterid/wavatar/retro/hide

存在的问题,评论的头像不显示,这是因为它使用了Gravatar头像服务。这个有个解决办法,是替换使用国内的同样类型的服务就可以啦。推荐Cravatar。

Cravatar(初认头像)为您的网站公开个人资料提供助力,无论您在互联网上的何处发帖、评论或在线互动均可获取。真人、真实、真像好用方便。

地址:中国公共头像服务CNavatar

把Valine.min.js中默认访问的https://gravatar.loli.net/avatar

替换为以下内容即可: 

https://cravatar.cn/avatar/

LeanCloud介绍

LeanCloud 是领先的 Serverless 云服务,为产品开发提供强有力的后端支持,旨在帮助开发者降低研发、运营维护等阶段投入的精力和成本。 LeanCloud 整合了各项服务,让开发者能够聚焦在核心业务上,为客户创造更多价值。

它提供了四项产品,分别是 LeanStorage(数据、文件存储及云引擎)、LeanMessage(短信、推送及实时通讯服务)、LeanAnalytics(统计分析服务)、LeanModules(各种其他通用组件)。

官网地址:LeanCloud

使用LeanCloud服务后,访问一些服务变得很简单,如数据存储是云服务提供的核心功能之一,可用于存放和查询应用数据。可以这么用:

// 以下示例如何创建一个对象并将其存入云端。
// 声明class 
const Todo = AV.Object.extent('Todo');// 创建对象
const todo = new Todo();// 为属性赋值
todo.set('title','标题');
todo.set('content','这是内容');// 将对象保存到云端
todo.save().then((todo) => {
// 成功保存之后,执行其他逻辑
console.log(`保存成功。objectId:${todo.id}`);
},(error) => {
// 异常处理
});

 python使用leanCloud:

# 声明 class
Todo = leancloud.Object.extend('Todo')
# 构建对象
todo = Todo()
# 为属性赋值
todo.set('title',   '工程师周会')
todo.set('content', '周二两点,全体成员')
# 将对象保存到云端
todo.save()

详细使用方法参见文档:LeanCloud 开发者文档 

其他的一些博客评论系统

Livere(来必力)
https://livere.com

 畅言云评

云评论支持各种类型的Web网站接入,网站只需要粘贴、复制JS代码到网页的任意位置,或者复制代码到模板中,云评论评论框将在所有网页自动出现。这个也有免费版本,就是免费版本的广告太多。听说有lite免广告版本,感兴趣的可以试试。

https://changyan.kuaizhan.com/

Discuss

Discuss是一款简单,安全,免费的评论系统,仅提供基础的评论功能,并没有过多的功能

这可以使得 Discuss 可以融合进其它项目,甚至可以方便而再此基础上进行二次开发。

这个功能也挺强大,就是使用上后台端需要自己部署服务。

https://discuss.js.org/

其他资源

头像配置 | Valine 一款快速、简洁且高效的无后端评论系统。

https://discuss.js.org/Quick-Start.htm

LeanCloud

Valine - 一款快速、简洁且高效的无后端评论系统_valine配置-CSDN博客

【精选】LeanCloud基本使用_leancloud使用说明-CSDN博客

相关文章:

好用的博客评论系统 Valine 使用及避坑指南

评论系统&#xff0c;即网站的一个小功能&#xff0c;展示评论内容和用户输入框。开源免费的评论系统可不多&#xff0c;原来很火的"多说"评论系统都关闭了&#xff0c;而Disqus又是国外的访问受限。无意间发现了Valine&#xff0c;挺不错的&#xff0c;分享给大家。…...

【Mysql】[Err] 1293 - Incorrect table definition;

基本情况 SQL文件描述 /* Navicat MySQL Data TransferSource Server : cm4生产-200 Source Server Version : 50725 Source Host : 192.168.1.200:3306 Source Database : db_wmsTarget Server Type : MYSQL Target Server Version : 50725 File…...

SpringBoot——日志及原理

优质博文&#xff1a;IT-BLOG-CN 一、SpringBoot日志 选用 SLF4j&#xff08;接口&#xff09;和 logback&#xff08;实现类&#xff09;&#xff0c;除了上述日志框架&#xff0c;市场上还存在 JUL(java.util.logging)、JCL(Apache Commons Logging)、Log4j、Log4j2、SLF4j…...

7种SQL的进阶用法

1.自定义排序&#xff08;ORDER BY FIELD&#xff09; 在MySQL中ORDER BY排序除了可以用ASC和DESC之外&#xff0c;还可以使用自定义排序方式来实现。 CREATE TABLE movies ( id INT PRIMARY KEY AUTO_INCREMENT, movie_name VARCHAR(255), actors VARCHAR(255), price DEC…...

Unity--互动组件(Scrollbar)||Unity--互动组件(DropDown )

此组件中的&#xff0c;交互&#xff0c;过渡&#xff0c;导航与文章&#xff08;Unity--互动组件&#xff08;Button&#xff09;&#xff09;中的介绍如同&#xff1b; handle rect&#xff1a;&#xff08;父节点矩形&#xff09; 用于控件的滑动“句柄”部分的图形&#xf…...

Unity、UE和Godot的优劣对比

先占位。。。。。。 首先说Unity和UE这两家公司&#xff0c;是行业的两座灯塔&#xff0c;对整个游戏引擎的这个行业的发展具有这种指导性的这种作作用。这两个引擎我从2016年开始就一直在用&#xff0c;结合一下业内的共识&#xff0c;一般来说认为呢&#xff0c;Unity更擅长移…...

CMAK Kafka可视化管理工具

CMAK简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 CMAK(原名Kafka Manager)。 这个管理工具可以很容易地发现分布在集群中的哪些topic分布不均匀,或者是分区在整个集群分布不均匀的的情况。 它支持管理多个集…...

PHP如何持续监听Redis的消息订阅并推送到前端?

PHP如何持续监听Redis的消息订阅并推送到前端&#xff1f; 概述: 在许多Web应用程序中&#xff0c;实时推送消息是很常见的需求。当我们需要向前端实时发送消息时&#xff0c;往往会使用轮询或长轮询的方式去获取最新数据。但这种方式对服务器资源的消耗较大&#xff0c;同时响…...

php项目从宝塔面板切换转到phpstudy小皮面板

宝塔面板转phpstudy面板 版本 宝塔面板8.0.1 phpstudy面板8.1.1.3 步骤 1、宝塔面板,找到项目文件夹,打包、下载到本地、解压 2、本地windows系统安装phpstudy面板,选择尽可能一样的配置 比如宝塔php7.4.33,可能phpstudy面板只有php7.4.3,也行 大环境一定要一致,比如…...

基于Acconeer的A121-60GHz毫米波雷达传感器SDK移植及测距示例(STM32L496为例)

基于Acconeer的A121-60GHz毫米波雷达传感器SDK移植及测距示例&#xff08;STM32L496为例&#xff09; 工程&#xff1a; Keil工程资源 参考资料&#xff1a; A121 datasheet 1.3 A121 HAL Software Integration User Guide A121 STM32CubeIDE User Guide 官方参考示例工程&a…...

flink1.10袋鼠云 迁移 flink1.15原生环境 事项汇总

表DDL(平台自动生成)修改适配 1 DDL语法不通用 (袋鼠云DDL中支持给别名 DDL采用数据中台生成的模板,并把老版本DDL中的配置通过到相应参数中) 2 袋鼠云DDL支持给别名 sql中字段和DDL中字段不一致. 两种解决方案: 1 FlinkSQL别名语法和袋鼠云略不同 袋鼠云DDL: parseJson(parseJ…...

鸿蒙:Harmony开发基础知识详解

一.概述 工欲善其事&#xff0c;必先利其器。 上一篇博文实现了一个"Hello Harmony"的Demo&#xff0c;今天这篇博文就以"Hello Harmony" 为例&#xff0c;以官网开发文档为依据&#xff0c;从鸿蒙开发主要的几个方面入手&#xff0c;详细了解一下鸿蒙开…...

java_函数式接口

文章目录 一、什么是函数式接口二、四大核心函数式接口三、使用举例 一、什么是函数式接口 如果一个接口只有一个抽象方法&#xff0c;那么该接口就是一个函数式接口函数式接口的实例可以通过 lambda 表达式、方法引用或者构造方法引用来创建如果我们在某个接口上声明了 Funct…...

解决selenium访问网页中多个iframe,导致无法锁定元素的问题

解决方法 获取全部的iframe列表调试获取目标iframe使用&#xff1a;browser.switch_to.frame(目标iframe)退回到原有的状态&#xff1a;browser.switch_to.default_content() # 进入另一个iframe browser_iframe_list browser.find_elements(By.CSS_SELECTOR, "iframe&…...

MySQL大表设计

存储大规模数据集需要仔细设计数据库模式和索引&#xff0c;以便能够高效地支持各种查询操作。在面对数亿条数据&#xff0c;每条数据包含数百个字段的情况下&#xff0c;以下是我能想到的在设计数据库的时候需要注意的内容&#xff0c;不足之处欢迎各位在评论区批评指正&#…...

6.基于蜻蜓优化算法 (DA)优化的VMD参数(DA-VMD)

代码原理 基于蜻蜓优化算法 (Dragonfly Algorithm, DA) 优化的 VMD 参数&#xff08;DA-VMD&#xff09;是指使用蜻蜓优化算法对 VMD 方法中的参数进行自动调优和优化。 VMD&#xff08;Variational Mode Decomposition&#xff09;是一种信号分解方法&#xff0c;用于将复杂…...

OpenCV [c++](图像处理基础示例小程序汇总)

OpenCV [c++](图像处理基础示例小程序汇总) 推荐 原创 NCUTer 2023-04-04 14:18:49 文章标签 Image 图像处理 文章分类 计算机视觉 人工智能 在51CTO的第一篇博文 阅读数1467 一、图像读取与显示 #include<opencv2/opencv.hpp> #include<iostream>using…...

集成多元算法,打造高效字面文本相似度计算与匹配搜索解决方案,助力文本匹配冷启动[BM25、词向量、SimHash、Tfidf、SequenceMatcher]

搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术…...

Qt实现图片旋转的几种方式(全)

目录 一、用手搓&#xff08;QPainter&#xff09; 二、使用 QGraphicsView 和 QGraphicsPixmapItem 三、使用 QTransform 实现图像旋转 四、利用 OpenGL 实现旋转图像的效果有几种不同的方法&#xff0c;其中常见的包括&#xff1a; 手动旋转绘制&#xff1a; 使用 QPaint…...

常见面试题-Redis持久化策略

谈谈Redis 的持久化策略&#xff1f; 参考文章&#xff1a; Redis 持久化机制演进与百度智能云的实践 Redis的确是将数据存储在内存的&#xff0c;但是也会有相关的持久化机制将内存持久化备份到磁盘&#xff0c;以便于重启时数据能够重新恢复到内存中&#xff0c;避免数据丢…...

对比 PHP 7.4 和 PHP 8.0 的数组操作性能差异在哪里?

PHP 8.0 相比 7.4 在数组操作场景下整体性能提升约 18%-23%&#xff0c;但数组初始化方式本身差异可忽略&#xff0c;真正瓶颈在于动态扩容和键类型混用。 原因分析 PHP 7.4 及更早版本大量依赖解释执行与 ZVAL 间接寻址&#xff0c;函数调用开销高&#xff0c;每次 call_use…...

创业团队如何利用 Taotoken 统一管理多个 AI 模型的开发与测试密钥

创业团队如何利用 Taotoken 统一管理多个 AI 模型的开发与测试密钥 1. 多模型密钥管理的核心痛点 小型创业团队在同时开发多个 AI 功能模块时&#xff0c;通常会接入不同厂商的大模型 API。每个模型供应商都有独立的密钥体系&#xff0c;导致开发环境中散落着各种 API Key。这…...

GPU内核生成技术:挑战、优化与强化学习应用

1. GPU内核生成的技术挑战与现状GPU内核开发一直是高性能计算领域的核心难题。现代GPU架构的复杂性体现在多个层面&#xff1a;从硬件角度看&#xff0c;开发者需要处理多级内存体系&#xff08;全局内存、共享内存、寄存器文件&#xff09;、复杂的线程调度机制&#xff08;线…...

仿照Muduo的高并发服务器:EventLoop模块及与TimeWheel模块联调

本期接着深入编写项目代码 相关代码上传至gitee&#xff1a;喜欢可以点个赞谢谢 目录 EventLoop模块 Eventfd机制 设计思路 源码 TimeWheel时间轮模块整合 设计思想 源码 EventLoop模块与TimeWheel模块联调整合 EventLoop模块 Eventfd机制 eventfd是本项目中的一种事件通知…...

如何快速配置TrafficMonitor插件:新手终极指南打造全能任务栏监控中心

如何快速配置TrafficMonitor插件&#xff1a;新手终极指南打造全能任务栏监控中心 【免费下载链接】TrafficMonitorPlugins 用于TrafficMonitor的插件 项目地址: https://gitcode.com/gh_mirrors/tr/TrafficMonitorPlugins TrafficMonitor插件系统为Windows用户提供了一…...

TDD + DDD 双剑合璧:我是如何用测试驱动出清晰领域模型的

TDD DDD 双剑合璧&#xff1a;我是如何用测试驱动出清晰领域模型的 当业务需求像一团迷雾般模糊不清时&#xff0c;我们往往陷入两难&#xff1a;要么过早陷入技术实现细节&#xff0c;导致模型偏离业务本质&#xff1b;要么在抽象讨论中原地打转&#xff0c;迟迟无法产出可验…...

基于shadcn/ui与Tailwind CSS构建Neobrutalism风格React组件库

1. 项目缘起与设计哲学 如果你最近在逛一些设计社区或者前端开发者的社交平台&#xff0c;可能会频繁看到一个词&#xff1a; Neobrutalism 。它不再是建筑领域那个冷冰冰的“粗野主义”&#xff0c;而是演变成了一种充满活力、大胆甚至有点“叛逆”的数字设计风格。高饱和度…...

医疗AI模型评估:GREEN体系与多模态融合实践

1. 医疗AI模型评估的现状与挑战 医疗AI领域近年来发展迅猛&#xff0c;但模型评估始终是个棘手问题。传统评估指标往往只关注单一维度的性能表现&#xff0c;而忽视了医疗场景下的特殊需求。我在参与多个三甲医院AI项目时发现&#xff0c;临床医生最常抱怨的就是"模型指标…...

Minify高级功能探索:gzip压缩、缓存集成与路径转换

Minify高级功能探索&#xff1a;gzip压缩、缓存集成与路径转换 【免费下载链接】minify CSS & JavaScript minifier, in PHP. Removes whitespace, strips comments, combines files (incl. import statements and small assets in CSS files), and optimizes/shortens a f…...

别再手动去水加氢了!AutoDockTools保姆级预处理教程(含PubChem下载+OpenBabel转换)

AutoDock分子对接预处理全流程&#xff1a;从PubChem到可计算结构的完美转换 第一次接触分子对接的研究生们往往会在预处理阶段栽跟头——那些教程里一笔带过的"简单步骤"&#xff0c;实际操作时却可能耗费数小时甚至数天。本文将彻底解决这个痛点&#xff0c;打造一…...