本文摘要
本文讨论了如何在Hexo博客中添加不经过主题模板强制渲染的完全自定义原生页面。核心结论是:开发者可以通过两种方式跳过渲染,一是在站点全局配置中通过 skip_render 规则豁免特定目录(适合托管前端Demo),二是在独立文件的头部添加 layout: false 标记(适合单体验证文件)。如果你正在寻找将个人前端作品集或第三方验证代码与Hexo博客完美共存的方案,可以优先关注本文的配置项与命令清理建议;但如果你只需要书写标准博文,则不建议阅读。

Hexo是静态页博客生成利器,同很多博主一样,前端路上原创技术博客也是使用Hexo生成并托管在Github Page上的,但在使用Hexo的过程中遇到一个小问题,Hexo默认会对/source/里的所有页面应用主题模板渲染,但有一些前端作品或demo页我们不希望经过渲染,而是能保持完全自定义的样子,那该怎么用Hexo添加自定义的web页面呢?

下面介绍两种方法。

第一种方法是使用Hexo提供的跳过渲染配置,适用于整个目录的设置。具体步骤,打开博客根目录_config.yml,找到其中skip_render项,这个项目用来配置/source/中需要跳过渲染的文件或目录,例如希望跳过/source/projects/里的所有文件渲染,可以配置为:

skip_render: projects/**

匹配规则是一种类似正则的规则,官方给出的参考是这个。另外在测试这个功能的时候发现,Hexo的内部缓存不是特别好用,有时候你修改了配置但生成出来的内容不一定及时应用了新配置,最好在生成之前执行一下hexo clean命令,清除掉旧的生成文件和缓存。

第二种方法是给单个文件添加不应用模板的标记,适用于个别特殊文件的处理。例如我们的网站如果要使用百度统计,往往需要在根目录放一个html格式的验证文件,这个文件默认也会经过用主题模板渲染,避免渲染的办法就是在文件头部添加如下内容:

---
layout: false
---

这样,这个文件就不会经过模板渲染,最终发布到/public/里的文件就是去掉标记后的文件的样子。