Matery主题添加Artitalk
前言
先上链接,这是我的说说界面:闲言碎语
有时候啊,hexo想发说说/微语总是有点麻烦,这时候Artitalk出现了。
安装Artitalk
Matery主题没有自带Artitalk集成,所以要自己安装。
先生成一个说说的页面:
1 | hexo new page "shuoshuo" |
然后在blog/source/
下面出现了shuoshuo
这个文件夹,里面有一个index.md
文件。
打开这个文件,现在里面是这样的:
1 | --- |
把Front-Matery
改成这样:
1 | --- |
当然title
你可以自定义哦
之前真的很头疼,Artitalk
和Valine
不能同时使用,因为两者的后台都是基于LeanClou
d的,所以不能一起使用。我也曾因此放弃过搭建说说。
我也试过在Front-Matter
里添加comments: 'false'
,但是这个方法仅适用于Butterfly
主题,Matery
主题没有这个配置。
但是前几天看到Artitalk
官方的文档说解决了这个问题,我就再次尝试了。
和Valine
一样,打开LeanCloud
之后创建应用,之后我借用一下Artitalk.js
的官方文档。
绑定完成之后点击创建应用,应用名称随意,接着在结构化数据中创建
class
,命名为shuoshuo
。在你新建的应用中找到结构化数据下的用户。点击
添加用户
,输入想用的用户名及密码。回到结构化数据中,点击
class
下的shuoshuo
。找到权限
,在Class
访问权限中将add_fields
以及create
权限设置为指定用户,输入你刚才输入的用户名会自动匹配。为了安全起见,将delete
和update
也设置为跟它们一样的权限。点击
class
下的_User
添加列,列名称为img
,默认值填上你这个账号想要用的头像url,这一项不进行配置,说说头像会显示为默认头像——Artitalk的logo。在最菜单栏中找到
设置
->应用keys
,记下来AppID
和AppKey
,一会会用。最后将
_User
中的权限全部调为指定用户,或者数据创建者,为了保证不被篡改用户数据已达到强制发布说说。因为
leancloud
功能的限制。若想同时使用valine
和artitalk
,请在class
中添加名为Comment
的class
。不推荐在存储valine
的应用中新建名为shuoshuo
的class
,可能会出现神奇的bug。
之后在shuoshuo
的index.md
里添加如下代码:
1 | <script src="https://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> |
如果出现特殊情况,我这里不一一解释/*其实我也不懂emmmm*/。最好是查看Artitalk.js
的官方文档==>传送门
还有哈,有一些自定义功能可以到Artitalk.js
的官方文档里查看,在这里==>传送门
但是Artitalk
仍然不能使用。
更新Valine
Artitalk的大佬说了,Valine
里面的av-min.js
干扰了Artitalk
。而v1.4.x版的Valine
可以不需要av-min.js
。于是我得把Valine
升级一下。
由于Valine
是集成在Matery
主题里的,所以升级可折腾死我了。
到Github上找到Valine
:传送门
复制https的Git地址,到GitHub代下载服务快速下载//真的没有打广告
然后解压,在dist
文件夹里找到Valine.min.js
,复制并替换blog\themes\matery\source\libs\valine里面的Valine.min.js
并删除av-min.js
,然后hexo cl&&hexo g&&hexo s
。查看的地址是 [https://{you blog’s site}/shuoshuo](https://{you blog’s site}/shuoshuo)
以下是我的效果图,但是我觉得这个样子很难看,这些画红框框的地方我不喜欢。
更不能忍受的是,最下面的文章跳转吧我的appID和appKey给泄露了。不但不美观,还有点危险。
优化说说界面
我再想了一下,由于我没有给shuoshuo
定义页面,所以它就按照post
的样式来了。
在Front-Matter
里加上这个一行:
1 | layout: "shuoshuo" |
然后在主题文件夹下找到\matery\layout\
,在里面新建一个shuoshuo.ejs
文件。
1 | <style type="text/css"> |
这个代码是我从
about.ejs
里面复制来的,经过删减和添加,可能效果还是不怎么样,但是毕竟算是我捣鼓出来的emmm。有不合理之处请赐教。
最后可以hexo cl&&hexo g&&hexo s
看看,并试着hexo d
了。
且慢!!!
我忘了一个很重要的事,要在主题文件的_config.yml里添加这么一行:
1 | 说说: |
这样才能在顶部菜单栏里看到这个页面。