博客美化

前言

最近时间比较多,而且有兴趣搞这些东西,就稍稍记录一下。

这个博客用的是hexo,主题是hexo-cactus,自己改了一点模板,今天想发的一篇文章在别的平台发过了,按平台规定是不能转出去的,但是我博客文章和笔记文章是分开的,图片路径都是相对路径懒得移动了,所以就找了找加密的办法。

加密插件

hexo-blog-encrypt,我找到了这个插件,用了一下感觉很简单,安装好后在最外层的 _config.yml 配置好就可以了,唯一的一点问题是 TOC 不显示,也就是右边的目录,于是继续翻wiki,找到了其他主题的修改方法,google后也没有找到详细的讲解,于是对着issue自己摸索,最后找到了 actions_desktop.ejs 文件,之前我修改模板的时候就和这个文件打过交道。

修改TOC

按照作者的意思,替换原本的 TOC 生成方法就可以了,里面原本有下面这一句。

1
2
3
<div id="toc">
<%- toc(page.content) %>
</div>

给他替换成下面这样就可以了。

1
2
3
4
5
6
7
8
9
<div id="toc">
<div id="toc-div" class="toc-article" <% if (page.encrypt==true) { %>style="display:none" <% } %>>
<% if (page.encrypt==true) { %>
<%- toc(page.origin, {list_number: true}) %>
<% } else { %>
<%- toc(page.content, {list_number: true}) %>
<% } %>
</div>
</div>

网站目录

自动生成categories

hexo-auto-category,可根据 source/_post/category/title.md 来生成文章的 categories,主要是我用Typora在本地写文章会好管理分类一些,配置也很简单。

自定义页面url

由于用了hexo-auto-category,导致路由全变了,我原先的路由是 .com/1.html 这种形式的,现在用这个插件修改为了

.com/categoriy/1.html,而且categories是中文的,会被url编码一次,于是找到了hexo-abbrlink,使用方法网上也有很多了,就不在这里炒冷饭了,只在这里记录一下我的路由修改过程。

使用插件后我把路由配置成了.com/[crc32].html的形式,现在的问题是,如果直接替换掉网站中的旧html文件,搜索引擎的索引都会失效,于是我先让两者共存,主动提交url到搜索引擎,到时再在收录平台删除旧的,过段时间完善这部分。

推送索引

hexo-submit-urls-to-search-engine,可以直接看中文教程对着弄,很详细了,主要是google的有点绕,其他两个平台都不复杂。