编写Hexo插件
前言
Hexo已经用了大半年,真的很符合我写博客的种种需求。不过最近在使用Hexo中的skip_render标签时,遇到了一些问题。该标签下面的目录,还是会经过Hexo的处理,并不是我想像中的那样:直接把这些资源复制到public目录下面。
当我执行“hexo g”命令时,对于某些文件,Hexo中的nunjucks库会报错。于是就想着自己写一个复制资源的插件。(实际上对于这种比较简单的功能,通过写脚本来实现会更加方便)。看了下Hexo插件的实现机制,以及官方的文档之后,就简单的实验了下。下面就列举下过程。
编写Hexo插件
在官方手册里面可以看到Hexo是支持编写插件的,并且通过NPM来管理。而且官方的文档也写了不少关于编写插件的步骤,所以实现起来并不复杂。
添加插件目录
在博客目录下的node_modules目录下,添加一个以hexo开头的目录,再在里面创建两个文件。
index.js
1
2
3
4
5var hexo = hexo != undefined ? hexo : {}
console.log("test...1", __dirname)
hexo.on("processAfter", function(){
console.log("test...2", __dirname)
})package.json
1
2
3
4
5
6{
"name": "hexo-just-copy",
"version": "0.0.1",
"main": "index"
}
编辑博客目录下的package.json文件
在字段dependencies中添加:
“hexo-just-copy” : “^0.0.1”
测试
小结
更多功能可以参考node_modules目录下其它插件的写法。
以及官方文档:
https://hexo.io/docs/plugins.html
https://hexo.io/api/events.html
最后附上一个执行复制的python脚本。。。毕竟还是写脚本方便。
1 | import os |
转载本站文章请注明作者(xtutu)和出处 xtutu