hexo 插件开发流程以及推送至hexo官方列表
Hexo插件分类
插件类别 | 插件作用 |
---|---|
渲染插件 | 界面渲染逻辑处理,例如:hexo-renderer-ejs 、hexo-renderer-pug |
部署插件 | 静态文件发布 |
分析插件 | 数据分析:例如文章字数、阅读时间等 |
SEO插件 | 搜素引擎优化插件 |
生成器插件 | 生成特定的页面或者文件:例如标签页面、分类页面等 |
过滤器插件 | 过滤器插件在 Hexo 的生命周期的各个阶段对内容进行处理。例如,添加代码高亮、处理图片等。 |
显示插件 | 显示插件提供辅助功能,通常用于模板或布局中,例如生成导航菜单、分页等。 |
模版插件 | 模板插件提供主题和样式相关的功能,帮助美化博客的外观。 |
扩展插件 | 扩展插件增加或修改 Hexo 的核心功能,提供额外的特性和功能。 |
数据插件 | 数据插件用于处理外部数据源,例如从数据库或 API 获取数据,并在博客中展示。 |
Hexo插件使用
安装插件
npm i hexo-create-issues |
配置插件
# _config.yml 文件 |
Hexo插件开发
Tips 1: 建议使用commonjs方式编写,新的一些package大都是esmodule编写,commonjs中引入需要动态导入import()
Tips 2: Hexo 插件需要以
hexo-
前缀开头,同时不能重名
脚本模式开发
- hexo工程目录下新建scripts文件夹
- 根据需求编写对应脚本
npm包形式开发
新建项目,按照npm包开发流程即可
项目依赖安装,其他需要的依赖自行安装,hexo是必须的
npm install hexo
根据需求编写脚本
hexo.on()
可以监听hexo执行的生命周期钩子,可以编写相关逻辑hexo.config
可以获取_config.yml
中的所有配置项,逻辑中可以调用获取
本地联调:建议使用
yalc
,具体使用方式可以参考博主的这篇文章,yalc使用调试完成,发布至npm
npm login
npm publish项目中使用:安装发布的npm包后,_config.yml中再配置一下即可(
plugins
以及所需变量
配置)
Hexo插件发布至hexo列表
需要先发布npm包
然后fork hexojs/site
clone fork后的仓库到本地
在clone后的项目中的
source/_data/plugins/
中创建一个新的 yaml 文件,使用您的插件名称作为文件名编辑yaml文件,按需求录入以下内容
description: Server module for Hexo.
link: https://github.com/hexojs/hexo-server
tags:
- official
- server
- consolepush修改,再向hexo site官方提交一个pull request,请注意提交的commit msg格式规范