创建插件

scripts 脚本

在主目录下创建 scripts 文件夹,里面放上待执行的JS脚本。

在内容较少时可以使用这种方式

插件

所有的 hexo 插件必须以 hexo- 开头,否则 hexo 不会加载。

在主目录下的 node_modules 新建一个文件夹,作为项目文件夹。然后在 项目文件夹里执行 npm init

1
2
3
mkdir your_mod
cd your_mod
npm init

之后根据提示输入信息,就创建好了 package.json ,这里也可以手动创建文件,效果相同

package.json 必须的三个配置项:

1
2
3
4
5
{
"name": "hexo-xxx",
"version": "1.0.0",
"main": "index.js"
}

接着创建文件 index.js 作为入口代码文件

测试

index.js 输入测试代码:

1
2
3
hexo.extend.filter.register('before_generate',()=>{
console.log("Plugin is running");
});

hexo 项目的 package.json ,新增一行 dependency:
"hexo-xxx": "^1.0.0",

然后,每次执行 hexo g 或者 hexo s, 都会看到插件的 log, 证明插件已经运行了。

发布

如果你要发布到 NPM, 那么遵循 npm 的流程即可。

发布流程为,到插件目录上使用 cmd /git base,执行 npm login,如果还没有 npm 账号,需要先到 npm.com 上注册一个,再执行该命令。

提供账号名、密码、邮箱之后就可以登录成功,再执行 npm publish,即可将插件发布到 npm 上。

再到项目中通过 npm /cnpm 安装插件。

如果你使用 taobao 的 registry,npm login 和 npm publish 可能会失败。

npm config list
需要恢复默认 registry:

npm config set registry ‘http://registry.npmjs.org'
当你的包发布好以后,只需要回到你的 blog 目录

npm install hexo-your-plugin –save
本地 package.json dependency 会对应修改。
你可以试试是否已经生效。

升级发布的 npm 插件
首先修改 package.json 文件的 version 版本号,然后更新源码,最后执行一下命令

npm publish –registry http://registry.npmjs.org
项目中使用这个插件的时候(即使用 npm install 安装过),升级命令

npm update 插件名