Last edited time
Aug 29, 2024 01:19 PM
password
AI summary
type
status
date
slug
summary
tags
category
icon
搭建的基于Notion的博客站点默认不支持评论,但上期聊到了gitalk评论系统,这期重点介绍Twikoo评论。
一、Notion站点配置Twikoo评论插件
1. 介绍
Twikoo是一个简洁、安全、免费的静态网站评论系统,基于 腾讯云开发。一番体验,发现Twikoo真的很强大,目前我决定用它作为主要评论插件。
Twikoo支持支持即时通知反垃圾插件、隐私设置等功能,无需另外登录后台,并且配置方式也十分方便,在页面评论区就可以直接管理评论、配置插件。
Twikoo支持一键导入valine评论数据,您可以很方便地迁移评论数据。
2. 下面将演示twikoo评论插件运用到自己的博客中的效果
2.1 效果图:

2.2 管理面板:

3. 快速配置
在最新版本中 NotionNext已经支持该评论插件,配置方法很简单:
在Vercel后台添加一个环境变量NEXT_PUBLIC_COMMENT_ENV_ID ; 值为您部署好的twikoo后台地址。以我的为例:https://twikoo.orys.link/

下面说说如何获取NEXT_PUBLIC_COMMENT_ENV_ID ,这里借助vercel,可以非常快速地部署自己的twikoo后台,用于储存评论数据。
二、Vercel上部署Twikoo
1.创建MongoDB数据库
这是Twikoo要用到的数据库,我们可以使用免费的在线MongoDB数据库
1.1 注册账号:

登录后点击Create a new database,然后选择free的,根据自身情况选择最近地区的provider


这里牢记 Usernname 和 Password ,忘记可以到Security修改


1.2 获取数据库链接地址
设置允许和数据库建立连接的ip地址,这里设置允许所有ip都能访问:0.0.0.0/0

选择 Connect 找到连接配置:

这里选择 Drivers

可以看到 Connect to twikoo(我这里用来Google翻译所以是汉语),然后复制” 3.将连接字符串添加到应用程序代码中 ”中的连接,注意看清绿色部分的内容。将中间那一长串复制,并将中间的 <password> 更改为你自己账号的密码,记下来这一段后面要用

2. Vercel部署Twikoo
2.1 点击下方链接一键部署
该链接实际上就是将Twikoo从GitHub导入到Vercel进行部署,然后点击 Create,等待部署完成,你会看到如下显示的页面,这里是提示需要配置 MongoDB数据库地址,图如下图所示,只是红框中文字是 {"code":1000,"message":"未设置环境变量 MONGODB_URI"}

2.2 设置Environment Variables
到settings中配置环境变量,这里要用到Mongodb最后的那个链接,如图所示

需将<user>和<pass>配置正确,否则在depeloy时会出现下面的错误提示。
{"code":1000,"message":"bad auth : authentication failed"}

这里很容易出错,一定一定要注意!!!
如果配置正确就会提示下面信息:
{"code":100,"message":"Twikoo 云函数运行正常,请参考 https://twikoo.js.org/quick-start.html#前端部署 完成前端的配置","version":"1.6.17"}

2.3 twikoo 配置域名
由于vercel 给项目分配的域名在国内会被墙,所以需要给twikoo配置域名。在settings中单击 Domains,Add 自己的域名,这里需要到域名服务器进行DNS设置,我这里只需在DNS记录中添加CNAME即可。

配置完,稍等片刻即可通过新域名进行访问。

三、 配置NotionNext
在你的 NotionNext 项目下,配置你的Twikoo环境变量(详见本文 一、3.快速部署)
NEXT_PUBLIC_COMMENT_ENV_ID :
https://twikoo.orys.link
然后重构一下项目即可。随便点开自己项目中任一篇文章就可以看到项目已经成功添加Twikoo评论插件。
四、 配置Twikoo
单击Twikoo下的设置按钮


重要:配置管理员密码,以及其他功能设置
最好是设置一个隐藏面板的昵称,这样只有你在 昵称 栏输入指定关键字的时候,才会显示这个管理员入口,其他的设置,可以慢慢看看说明进行填写即可
五、支持图片评论
Twikoo评论区要支持图片评论功能需要配置图床,这里以比较容易设置的smms图床为例,首先要进行注册,注册成功之后,会给你5GB的空间用来存储图片,一般来说够用了。将获取的smms图床的token复制到Twikoo插件设置里的IMAGE_CDN_ToKEN,并且将IMAGE_CDN填写为smms,其余选项保持默认即可,配置结束之后记得拉到最下方点击保存,刷新一下即可生效。下面图片展示详细的步骤:
smms注册并获取token

网站的Twikoo评论设置

六、支持Latex公式评论
支持公式评论可以参考Twikoo官网的如何开启Latex支持?,就是在主题配置文件index.htm中引入如下代码:

经测试在
NotionNext/public/games-external/common/index.htm
中添加下面css和js即可🤗 总结归纳
- Notion博客项目
- MongoDB数据库
- Vercel容器
- GitHub→Twikoo
- 域名
- smms图床
- Latex评论
📎 参考文章
📎 扩展
有关Notion安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
- 作者:迷途
- 链接:blog.ortech.us.kg/article/twikoo
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。