前言:
给博客增加一些更高级的功能,例如分页、站内搜索、评论…
Hexo文章加密
简介
(1) 尝试着想一下,你写了一篇博客,但是,出于某种原因,不太希望每一个人都可以看到他。所以你常常会为这种文章设置一个密码,其他人需要输入密码才可以访问这篇博客。所以Hexo-Blog-Encrypt
因为这个需求而诞生了
(2) 一旦你输入了正确的密码,你可以在接下来的 30 分钟内,无需密码访问该网页
安装
(1) 命令:
1 | npm install --save hexo-blog-encrypt # npm安装 |
(2) 在站点配置文件_config.yml
中添加插件配置:
1 | # Security |
(3) 文章头部添加对应字段,如password, abstract, message:
1 |
|
(4) hexo clean && hexo g && hexo s
,来查看效果
注意事项
(1) 文章设置的password优先级最高,其次是设置标签加密,文章多标签加密密码优先级跟文章标签先后顺序有关
(2) 密码的有效时间是30分钟
(3) 插件还可以对TOC
进行加密以及修改加密模板,详情见参考链接
(4) 加密后的文章可能会有不显示文章目录的bug,解决方案:将next/layout/_macro/sidebar.swig
替换为这个博客中的文件
参考链接:https://github.com/MikeCoder/hexo-blog-encrypt/blob/master/ReadMe.zh.md
Valine评论
安装使用
Next主题,本身就已经集成了valine,因此正常情况下只需要配置一下就行了,不用安装
,需要安装的可以使用以下命令:
1 | # Install leancloud's js-sdk |
Leancloud配置
(1) 之前的文章次数统计已经配置过了,这里只需要进入Leancloud获取对应的APP ID
和APP KEY
就行了
(2) 修改主题配置文件hexo\themes\next\_config.yml
,修改以下参数:
1 | valine: |
(3) 评论者头像avatar
取值与显示效果如下:
hexo管理插件
hexo-admin
(1) 安装插件
1 | npm install --save hexo-admin |
(2) 测试hexo s
启动服务,访问http://localhost:4000/admin/
,就可以看到管理页面
功能说明
- Pages:新加 page
- Posts:新加或删除 post;双击一个 post,你可以编辑,预览,新增修改 tags、categories,选择发布或不发布
- Settings:一些配置
- Deploy:可以直接部署到 github
(1) 密码保护
打开Setting
,点击Setup authentification here
输入用户名,密码,密钥,下面会自动生成配置文件,复制加在hexo根目录下的_config.yml
中:1
2
3
4admin:
username: myfavoritename
password_hash: be121740bf988b2225a313fa1f107ca1
secret: a secret something
(2) 发布文章
进入后台之后点击Deploy
,里面的Deploy
按钮是用来执行发布脚本的,所以我们先在博客根目录下新建个目录脚本文件hexo-deploy.bat
(window系统,Linux系统可参考链接),里面写下下面代码然后保存:
1 | hexo g -d |
然后在hexo根目录下的_config.yml
中的admin下添加:
1 | admin: |
点击Deploy
就会执行这个命令并提交到GitHub
上
参考:
(1) https://github.com/jaredly/hexo-admin
(2) https://blog.csdn.net/dataiyangu/article/details/83066586
(3) https://albenw.github.io/posts/4ffa5bc6/
(4) https://segmentfault.com/a/1190000018488921
相册
注:Next主题默认是不含有相册页面的,如果想添加此页面需自行编写
相册和视频导航栏
其他配置
博客相册页面
图片的处理
小功能集合
文章链接唯一化
hexo默认提供的文章链接方案是使用年/月/日/标题,也许你会数次更改文章题目或者变更文章发布时间,文章链接都会改变,不利于搜索引擎收录,也不利于分享。唯一永久链接才是更好的选择
(1) 安装插件
1 | npm install hexo-abbrlink --save |
(2) 在站点配置文件中查找代码permalink
,将其更改为:
1 | permalink: posts/:abbrlink/ # “posts/” 可自行更换 |
参考
(1) https://malizhi.cn/HexoAlbum/
(2) https://www.jianshu.com/p/7f6425b3ffb2