安装
npm install --save hexo-blog-encrypt
把下面这段加入到 tag 下面
1 2 3
| password: 密码 abstract: Welcome to my blog, enter password to read. message: Welcome to my blog, enter password to read.
|
快速使用
- 将 “password” 字段添加到您文章信息头就像这样.
1 2 3 4 5 6 7
| --- title: Hello World date: 2016-03-30 21:18:02 password: mikemessi ---
|
- 再使用
hexo clean && hexo g && hexo s
在本地预览加密的文章.
设置优先级
文章信息头 > 按标签加密
高级设置
文章信息头
1 2 3 4 5 6 7 8 9 10 11 12 13
| --- title: Hello World tags: - 作为日记加密 date: 2016-03-30 21:12:21 password: mikemessi abstract: 有东西被加密了, 请输入密码查看. message: 您好, 这里需要密码. wrong_pass_message: 抱歉, 这个密码看着不太对, 请再试试. wrong_hash_message: 抱歉, 这个文章不能被校验, 不过您还是能看看解密后的内容. ---
|
_config.yml
示例
1 2 3 4 5 6 7 8 9 10 11 12
|
encrypt: abstract: 有东西被加密了, 请输入密码查看. message: 您好, 这里需要密码. tags: - {name: tagName, password: 密码A} - {name: tagName, password: 密码B} template: <div id="hexo-blog-encrypt" data-wpm="{{hbeWrongPassMessage}}" data-whm="{{hbeWrongHashMessage}}"><div class="hbe-input-container"><input type="password" id="hbePass" placeholder="{{hbeMessage}}" /><label>{{hbeMessage}}</label><div class="bottom-line"></div></div><script id="hbeData" type="hbeData" data-hmacdigest="{{hbeHmacDigest}}">{{hbeEncryptedData}}</script></div> wrong_pass_message: 抱歉, 这个密码看着不太对, 请再试试. wrong_hash_message: 抱歉, 这个文章不能被校验, 不过您还是能看看解密后的内容.
|
配置优先级
文章信息头 > _config.yml
(站点根目录下的) > 默认配置
对 TOC 进行加密
如果你有一篇文章使用了 TOC,你需要修改模板的部分代码。这里用 landscape 作为例子:
- 你可以在 hexo/themes/landscape/layout/_partial/article.ejs 找到 article.ejs。
- 然后找到 <% post.content %> 这段代码,通常在30行左右。
- 使用如下的代码来替代它:
1 2 3 4 5 6 7 8 9 10 11
| <% if(post.toc == true){ %> <div id="toc-div" class="toc-article" <% if (post.encrypt == true) { %>style="display:none" <% } %>> <strong class="toc-title">Index</strong> <% if (post.encrypt == true) { %> <%- toc(post.origin, {list_number: true}) %> <% } else { %> <%- toc(post.content, {list_number: true}) %> <% } %> </div> <% } %> <%- post.content %>
|