Halo 全站创作活跃度日历插件
以 GitHub Contributions Calendar 的形式,在 Halo 页面中展示所有作者每天的创作活跃度。
- 适配 Halo 2.25.0 及以上版本
- 作者:Akagi_Zen
- 许可证:MIT
- 统计文章和独立页面的有效新增字数、修改字数、首次发布和更新发布。
- 汇总所有后台作者的每日活跃度,分数越高,日期方块颜色越深。
- 鼠标悬浮或键盘聚焦日期时,显示当天活跃作者及每人的创作明细。
- 当前年份与往年切换,默认显示最近 5 年。
- 手机端横向滑动,自动适配深色主题。
- 在 Halo 默认编辑器的工具箱或
/命令中直接插入。 - 可分别设置组件标题、主题颜色、显示年份数量和作者明细开关。
- 插件设置页可以调整各项评分权重和四档颜色阈值。
每日活跃分 =
新增有效字数 × 1
+ 修改有效字数 × 0.5
+ 首次发布内容 × 800
+ 更新已发布内容 × 200
自动保存不会被当成独立的活跃行为。插件比较相邻内容快照,只累计真实发生变化的字数。
默认颜色区间:
| 活跃分 | 颜色等级 |
|---|---|
| 0 | 灰色 |
| 1–199 | 浅绿色 |
| 200–599 | 较浅绿色 |
| 600–1499 | 中绿色 |
| 1500 及以上 | 深绿色 |
- 下载 Release 中的
halo-plugin-activity-calendar-1.0.1.jar。 - 进入 Halo 后台的“插件”页面,点击右上角“安装插件”。
- 上传 JAR,安装并启用。
- 打开需要展示日历的文章或独立页面。
- 在默认编辑器工具箱中选择“全站创作活跃日历”;也可以输入
/后搜索“活跃日历”。 - 在组件顶部调整标题、主色、年份数量和作者明细开关。
- 保存并发布页面。
插件启用时会先把现有内容作为统计基线,避免把整篇旧文章误算成当天新增。安装后的编辑和发布活动会被记录;安装前的详细修改历史不会倒推补算。
环境要求:JDK 21、Node.js 24、pnpm 10。
./gradlew build构建后的插件位于 build/libs/。
git init
git add .
git commit -m "Initial release: activity calendar 1.0.0"
git branch -M main
git remote add origin https://github.com/fhfzfy1231/halo-plugin-activity-calendar.git
git push -u origin main如果已经初始化过 Git 仓库,则不需要再次执行 git init。
- 修复前台接口异常时导致活跃度数据加载失败的问题。
- 增强游客访问稳定性和空数据处理。
- 修复版本号并优化发布流程。