Full Changelog: https://github.com/ruibaby/plugin-static-pages/compare/v1.0.0-alpha.10...v1.0.0-alpha.11
Generated from v1.0.0-alpha.11
Generated from v1.10.3
本次发布补齐 ARM 架构支持,并集中修正断链检测的误报来源;代理配置从「仅断链检测」扩展到全部出站请求。
% 的文件名与中文域名不再被判为无效链接* 通配,默认 localhost / 127.* / ::1Generated from v1.1.0
本版本新增站点公开的投稿展示页面,并延续 1.2.0 的安全审核与委派权限设计。
/artisub。PUBLISHED,且 Halo 文章自身仍处于已发布状态的投稿。artisub.html 覆盖插件默认模板,实现与主题一致的页头、页尾和视觉风格。修复查看聊天记录页面的显示问题
修复手机端管理后台的显示bug
修复了手机端的聊天界面
第一盏灯,终于亮起来了。
Akari 是一款为个人博客设计的 Halo 主题。它不把内容陈列成整齐划一的货架,而是把手记、照片、瞬间、书影音和来访者的纸条,慢慢收进一间有生活痕迹的小屋。
Akari 适用于 Halo 2.25.0 及以上版本。安装后可按照主题使用说明完成自定义页面、菜单、媒体内容与可选插件的配置。
愿你写下的每一段生活,都能在这里被温柔地接住。
Full Changelog: 1.21.1...1.22.1
Generated from 1.22.1
Full Changelog: v1.0.0...v1.0.1
Full Changelog: 1.21.1...1.22.0
Generated from 1.22.0
为 Halo 后台管理面板提供深色/浅色模式切换。插件内置 Dark Reader 通用暗色引擎,自动分析页面 CSS 与 DOM,无需逐页手工适配,即可覆盖 Halo 核心页面和第三方插件页面。
light)、深色(dark)、跟随系统(auto)auto 模式)plugin-dark-mode-1.1.0.jar| 配置项 | 可选值 | 说明 |
|---|---|---|
| 主题模式 | light |
始终使用浅色模式 |
| 主题模式 | dark |
始终使用深色模式 |
| 主题模式 | auto |
跟随系统外观自动切换 |
type-check / lint / build 全绿./gradlew build 构建成功,JAR 内 ui/main.js 包含 Dark Reader 引擎,logo.png 为新图标>= 2.25.0Full Changelog: v2.2.1...v2.3.0
Generated from v2.3.0
MODE=SSB 与对应 SUBMODE。_INTL 字段保留中文内容。clean build 完整构建与 Java 测试通过。Generated from v2.3.30
本次更新重点优化了插件后台的数据加载机制,减少重复请求、服务器流量和数据库压力,并提升页面切换速度。
site_profile_updated 事件处理。以下操作属于主动查询或必要的数据同步,仍会正常访问服务端:
AstraHub 3.0 是从单节点接入迈向多节点协同的一次重大跨越。
这一版本不只是界面和版本号的更新,而是对节点架构、图谱同步、实时通信、故障切换、运行状态存储以及插件交互体验的一次整体升级。
Astra 节点能力由以下成员共同提供强力驱动:
| 节点伙伴 | 节点地址 | 伙伴主页 |
|---|---|---|
| Serenity’s Blog | https://astra.aobp.cn |
https://www.aobp.cn |
| 冷月笙寒的小窝 | https://astra.lygalaxy.cn |
https://lygalaxy.cn |
| Fry酥条 | https://astra.fryfries13.cn |
https://space.bilibili.com/1808002444 |
| Beibing | https://astra.zzrbk.xyz |
https://www.zzrbk.xyz |
| Rinty雨屋 | https://astra.rinty.xyz |
https://www.rinty.xyz |
感谢每一位伙伴为 AstraHub 的贡献。
插件启动后会自动检测各节点状态和连接延迟,并根据实际可用情况选择服务节点。
主要能力包括:
呀呼!欢迎使用 Ethereal 主题 v1.1.0 版本,本次更新是 Ethereal 主题发布以来第一次大版本更新
本次更新带来 Banner 增强、文章卡片布局、在线状态功能、入场欢迎卡片等重大功能更新,并修复了一批体验问题
Banner 增强:新增视频展示、多图轮播、移动端独立图片来源;可前往「主题设置 → 基本设置 → Banner」配置体验 by @Helio-RC in #15
文章卡片布局:新增文章卡片网格布局,支持瀑布流显示以及封面贴边。可前往「主题设置 → 文章 → 文章卡片布局」配置,体验全新的卡片布局
在线状态功能:新增个人简介小组件在线状态功能,可显示个人在线状态以及自定义文案,支持管理员账号已登录时前台直接切换,无需后台设置;可前往「主题设置 → 侧边栏 → 在线状态」查看,体验独一的状态功能
入场欢迎卡片:新增访客进入网站时弹出欢迎卡片,支持 IP 定位(复用天气小组件腾讯位置服务 Key,无需单独配置)、自定义文案;可前往「主题设置 → 基础设置 → 欢迎弹窗」配置体验
动画速度档位:新增动画速度档位(舒缓 / 均衡 / 疾速 / 自定义),动画时长全面变量化;可前往「主题设置 → 基础设置 → 动画速度」配置体验 by @Helio-RC in #12
菜单面板:移动端新增抽屉样式,支持手风琴 / 抽屉两种模式切换;PC端新增支持固定导航栏,可前往「主题设置 → 样式 → 菜单栏设置」配置体验
心愿便签插件页面适配:新增适配 心愿便签 插件页面,可安装后体验
日程日历插件页面适配及小组件:新增适配 日程日历 插件页面,并新增配套最近日程小组件,可安装后体验
修复所有小组件主题色装饰线未与标题对齐的问题
修复移动端文章卡片封面不铺满卡片的问题
修复音乐播放器 401 的问题 #11
修复公告移动端不显示的问题 #13
修复 CodeQL 安全扫描告警(构建产物 HTML 注释清理健壮性、外链弹窗头像 URL 协议白名单防 XSS)
变更完整日志: v1.0.8...v1.1.0
Generated from v1.1.0
/ 时误触发全局搜索的问题,现可正常输入网址及含斜杠内容。AI RolePlay 是面向 Halo 2.25.4+ 的 AI 角色扮演插件。所有模型发现、Provider 密钥和模型调用都由
Halo AI Foundation 提供,本插件不实现任何厂商大模型客户端。
2.25.4+211.0.0(插件依赖范围 <2.0.0)24、pnpm 10./gradlew clean build
Windows:
.\gradlew.bat clean build
产物位于 build/libs/plugin-ai-roleplay-1.3.1.jar。
./gradlew haloServer
http://localhost:8090/console,默认账号密码均为 admin。Halo 最新插件规范使用 Extension Store,而不是插件直接维护数据库方言相关的物理表。逻辑映射如下:
| 需求中的逻辑表 | Halo Extension |
|---|---|
ai_role |
AiRole |
ai_chat_session |
AiChatSession |
ai_chat_message |
AiChatMessage |
ai_user_permission |
AiUserPermission |
ai_agreement |
AiAgreement |
| 协议确认 | AiAgreementAcceptance |
会话处置字段保存在 AiChatSession 中,AiChatMessage 不维护逐条审核状态。
V001SeedDataMigration 在首次启动时幂等创建默认服务协议和四个示例角色,不覆盖管理员数据。
后端通过 Halo 跨插件扩展点获取模型服务:
extensionGetter.getEnabledExtension(AiModelService.class)
.flatMap(service -> service.languageModel(modelName))
.flatMap(model -> model.generateText(request));
modelName 始终为 AiModel.metadata.name。API Key、Base URL、Provider 适配和模型发现均留在 AI Foundation 中。


新增两项图库设置,让访客可以更灵活地浏览照片。
photos_show_meta,默认开启):
theme.config?.photos?.photos_show_meta。photos_click_behavior,默认 detail):
detail(跳转详情页):点击图片进入照片详情页;悬停时同时显示「查看详情」与「放大查看」两个按钮。lightbox(直接放大查看):点击图片直接打开大图灯箱,不再跳转详情页,此时「查看详情」按钮自动隐藏,仅保留「放大查看」。theme.config?.photos?.photos_click_behavior。photos.css / photos.ts / photo.html / photos.html 与 main.css,实现叠层样式、按钮显隐逻辑与灯箱交互。theme.yaml 版本号升至 1.1.4。Generated from v1.3.2
CN-GD / GD / CN-11 三种 region 码并按省去重GET umami/metrics?type=country|region|city&startAt=&endAt=&limit= 代理端点(复用登录换 token,未配置/异常自动降级)Generated from v1.1.2
Full Changelog: v2.4.1...v2.4.2
此提交实现了句子分享卡片的明暗主题切换功能,包括:
Generated from v2.4.2
Generated from v1.3.1
Generated from v1.3.0
Full Changelog: v2.4.0...v2.4.1
Generated from v2.4.1
Full Changelog: v2.3.1...v2.4.0
Generated from v2.4.0
Full Changelog: v2.3.0...v2.3.1
Generated from v2.3.1
全局样式 -> 基础行高 和 全局样式 -> 文章段落间距 中配置全局样式 -> 文章元信息分隔符 中自定义noopener noreferrerink 和 paper 配色1.75 倍, 文章段落间距调整为基础字号的 1.25 倍Full Changelog: 2.5.0...2.6.0
Generated from 2.6.0
/schedule-calendar and public card rendering to Thymeleaf templates with theme override support / 公开页面:将 /schedule-calendar 与公开卡片渲染委托给 Thymeleaf 模板,支持主题覆盖自定义__permission_probe__ / 权限:将破坏性权限探测替换为控制台管理权限专用接口,避免 __permission_probe__ 产生误导性的 404 日志/favicon.ico references that could trigger 404 requests on sites without a root favicon file / 公开页面:移除硬编码 /favicon.ico 引用,避免未配置根路径 favicon 的站点产生 404 请求Generate from v3.5.0
Full Changelog: v2.2.1...v2.3.0
Generated from v2.3.0
本版本针对 Halo 应用市场审核反馈完成安全、权限、性能和合规整改。
pass: true 且评分不低于 85 分时才允许自动发布。pass 缺失、字段类型错误、评分越界或 pass 与评分矛盾时不会自动发布。contributions/passcontributions/rejectcontributions/retry-aispec.owner 索引查询,不再全量读取文章后过滤。run.halo.* 迁移至 top.itxiaohui.contribution.*。2.25,即 Halo 2.25.x。本次更新带来全新的主题切换动画,并主要围绕页面加载性能与交互稳定性做了系统优化:热门文章与图片加载策略重写,降低请求量与布局抖动;外链安全校验、无障碍体验与稳定性问题一并完善,整体体验更流畅。
本版本大部分功能与优化 by @Helio-RC in #8 #7 #4 贡献,在此表示感谢!
欢迎加入 QQ 交流群:点击加入交流群
变更完整日志: v1.0.7...v1.0.8
Generated from v1.0.8
将页脚相关设置统一收归至「页脚设置」分组,便于集中管理;并对各功能区做分组整理,提升配置直观性。
footer_text(页脚版权文字)与 icp(ICP 备案号)移动到「页脚设置」分组。
theme.config?.basic?.footer_text → theme.config?.footer?.footer_texttheme.config?.basic?.icp / theme.config.basic.icp → theme.config?.footer?.icp / theme.config.footer.icpprivacy_url、terms_url、links_url、about_url 整理进新增的 legal_links 子分组,每个链接配独立显示开关(privacy_enabled / terms_enabled / links_enabled / about_enabled),关闭后对应链接不渲染。
layout.html 的 th:with 同步改为从 legal_links 读取,开关关闭时 URL 变量置为 null。light(浅色模式)与 dark(深色模式)两个子分组,取代原先平铺的 bg_image / bg_image_dark / social_color / social_color_dark 等字段。
footer.bg_image → footer.light.bg_image,footer.social_color_dark → footer.dark.social_color 等,透明度同理分属 light / dark。footer_subscribe_action 从「博主信息」(social) 分组移动到「页脚设置」分组末尾。
theme.config?.social?.footer_subscribe_action → theme.config?.footer?.footer_subscribe_action在页脚底部新增可配置的服务商 / 赞助商信息模块(如云服务、CDN 提供商)。
footer.sponsor):
enabled:是否显示服务商信息(默认关闭)。icon:Iconify 图标名(如 ri:cloud-line)或完整图片 URL。name:服务商名称(如 腾讯云、阿里云、京东云)。url:服务商链接,留空则名称显示为纯文本。prefix / suffix:名称前 / 后文字,留空不渲染、不留空格。name_is_link:名称是否为超链接(默认开启)。prefix 与 suffix 在外层,icon 与 name 包在 .footer-sponsor-brand 内紧挨显示(gap:0,icon 加 margin-right:2px 微调);仅当 enabled 且 name 非空时渲染整块。.footer-sponsor 系列样式,复用主题色变量与 hover 过渡,与页脚其它元素风格一致。效果示例(配置 name=腾讯云、url=https://cloud.tencent.com、suffix=提供 CDN 加速/云存储服务):
☁ 本网站由 腾讯云 提供 CDN 加速/云存储服务
其中「腾讯云」为指向服务商链接的超链接,图标使用主题主色调。
links.html / links.css / links.ts),统一卡片视觉与交互。theme-cosolar-linkgroup-icon) 自定义(Iconify / iconfont)。localStorage 记忆。links.show_apply_cta)。links.form_fields),可隐藏 logo / 邮箱 / 描述 / 友链 / RSS 等字段。minmax(0, 1fr),消除横向滚动;卡片描述最多显示 3 行并省略。.pill-items > li > form.social-auth-provider-form > button)编写样式,修复原规则被 .cos-card form button[type="submit"] 覆盖导致样式不生效的问题(提升选择器特异性并加 !important)。--c-border 边框、圆角,悬停仅文字 / 边框变主题色,不浮动、无阴影动画、不区分第三方平台品牌色。.pill-items li 的边框影响,避免按钮外层出现黑框。transition 仅过渡颜色,transform:none、阴影锁定)。min-height:48px 与 line-height:1,修复不同浏览器默认行高导致的高度异常。flex-wrap,单项 min-width:140px),列数由后台配置决定,不写死。login-*.css 同步更新。docs/links-rest-api.md 与 docs/links-theme-api.md,说明友情链接 REST API 与主题集成能力。settings.yaml 新增友链相关设置项。annotation-setting.yaml 新增 LinkGroup 图标注解字段。main.css 全面整理与变量统一。password-reset.css,相关样式并入 main.css。README.md 与 .gitignore。src/partials/pagination.html 与 main.css 中的分页样式,使其与文章卡片视觉权重协调。当前 / 总,字号 / 字重区分主次,不抢戏。display:block + flex item,文字 line-height:1)。链接管理插件:较新版beta加入了友链提交功能,具体可以查看插件说明。

Full Changelog: v2.1.0...v2.2.1
Generated from v2.2.1
详情请参阅更新日志(在 GitHub 上查看)。
Please refer to Changelog (view on GitHub) for details.
howiehz-higan-zh-hans.zip为简体中文默认安装包,仅包含.br。
howiehz-higan-zh-hans-tiny.zip为简体中文轻量安装包,移除默认字体资源,默认 logo 资源将替换为 1x1 占位图,不包含预压缩文件,且不注入 Mermaid / instant.page 运行时。
howiehz-higan-zh-hans-full-precompressed.zip为简体中文完整预压缩包,包含.gz/.br/.zst。
howiehz-higan-en.zipis the English default package with.bronly.
howiehz-higan-en-tiny.zipis the English tiny package that removes the default font assets, replaces the default logo asset with a 1x1 placeholder image, omits precompressed assets, and excludes Mermaid / instant.page runtime injection.
howiehz-higan-en-full-precompressed.zipis the English full precompressed package with.gz/.br/.zst.
修复:Umami 认证方式统一为登录账密,移除无效的 API Key 字段
自托管 Umami(任意版本,含 v2.x / v3.x)均没有「设置 → API keys」功能,API Key 仅为 Umami Cloud 的特性。原设置项对用户产生误导,且此前设置界面没有账密输入项(后端早已支持账密登录换令牌)。
API Key,新增「登录用户名」「登录密码」/api/auth/login 换取访问令牌升级后请前往插件设置重新填写 Umami 登录用户名和密码,原 API Key 配置项不再生效。
Full Changelog: v1.0.7...v1.0.8
Generated from v1.0.8
友情链接申请功能必须配合 链接管理插件 2.3.0 使用。
Generated from v1.0.1
适用于 Halo 2.20+ 的爱发电数据集成插件,提供赞助者、订单、方案、电铺商品、作品集的完整管理与主题展示能力。
afdian.com 和 ifdian.net 之间切换,主域名不可用时自动回退到备用域名插件注册 afdianPlusFinder 到 Thymeleaf 上下文,主题模板可直接调用:
| 方法 | 说明 |
|---|---|
afdianPlusFinder.listAllSponsor() |
获取全部赞助者 |
afdianPlusFinder.listAllOrder() |
获取全部订单 |
afdianPlusFinder.listAllPlan() |
获取所有方案 |
afdianPlusFinder.listAllProduct() |
获取电铺全部商品 |
afdianPlusFinder.listAllAlbum() |
获取全部作品集 |
afdianPlusFinder.parseTime(timestamp) |
秒级时间戳转 yyyy-MM-dd |
使用 window.open() 弹出 520×700 居中小窗口打开爱发电支付页面(爱发电设置了 X-Frame-Options,无法使用 iframe)。
在插件后台「API 配置」页面设置:
| 配置项 | 说明 |
|---|---|
| 用户 ID (user_id) | 爱发电创作者管理 → 开发者设置中获取 |
| API Token | 爱发电创作者管理 → 开发者设置中获取 |
| 缓存时长 | 数据缓存分钟数,默认 30,最大 1440 |
| 方案 ID 列表 | 需要在主题中展示的方案 ID,可添加多个 |
在爱发电后台设置 Webhook 地址:
https://你的域名/apis/console.api.afdian.aobp.cn/v1alpha1/afdian/-/webhook
详见 THEME-INTEGRATION.md,包含赞助者列表、方案卡片、电铺商品、弹窗支付的完整 Thymeleaf 模板示例。
Serenity 主题(Hue / Ordinary)已内置集成,在主题设置 → 关于页面中开启爱发电即可。
欢迎加入交流群了解更新、反馈问题和交流主题集成。

如果你基于本项目进行二次开发、功能移植或实现思路借鉴,请主动告知开发者。这有助于了解项目的实际使用情况、协调兼容性,并减少重复开发。
上述告知属于社区协作倡议,不限制 GPL-3.0 已授予的复制、修改和再分发权利。发布或分发衍生作品时,仍需遵守 GPL-3.0 的源代码提供、许可证保留和版权声明要求。
如需获取与发布制品对应的完整源代码,请通过项目主页或 GitHub 联系开发者。
适用于 Halo 2.25+ 的心愿墙与树洞插件,为站点提供便签展示、访客投稿、内容审核和主题集成能力。
安装并启用插件后,在插件设置中配置页面标题、投稿方式、审核模式和便签类型。
需要直接使用插件页面时,可启用内置页面并访问 /wishes。也可以在 Halo 后台创建便签墙页面,由当前主题提供 wishes.html 模板。
在主题的 templates/ 目录中创建 wishes.html,插件会优先使用主题模板渲染便签墙。主题可以自行控制页面布局和样式,便签数据通过 wishFinder 获取。
<th:block th:if="${wishFinder != null}"
th:with="wishes=${wishFinder.listApproved()}, typeMap=${wishFinder.getTypeMap()}">
<article th:each="wish : ${wishes}">
<span th:text="${typeMap[wish.spec.type]}">类型</span>
<p th:text="${wish.spec.content}">便签内容</p>
<span th:text="${wish.spec.anonymous ? '匿名' : wish.spec.nickname}">昵称</span>
</article>
</th:block>
<th:block th:if="${wishFinder != null}"
th:with="wishes=${wishFinder.listByType('wish')}">
<article th:each="wish : ${wishes}">
<p th:text="${wish.spec.content}">心愿内容</p>
<span th:text="${wish.spec.status}">状态</span>
</article>
</th:block>
可将 wish 改为 treehole 或后台创建的自定义类型标识。主题还可以使用:
wishFinder.listTypes():获取便签类型wishFinder.countApproved():获取公开便签总数wishFinder.countByType('wish'):获取指定类型数量wishFinder.getTypeMap():获取类型名称映射自定义 wishes.html 时,可直接使用插件注入的页面标题、副标题、纪念日设置、投稿开关和 AI 开关等模板变量。
欢迎加入交流群了解更新、反馈问题和交流主题集成。

如果你基于本项目进行二次开发、功能移植或实现思路借鉴,请主动告知开发者。这有助于了解项目的实际使用情况、协调兼容性,并减少重复开发。
上述告知属于社区协作倡议,不限制 GPL-3.0 已授予的复制、修改和再分发权利。发布或分发衍生作品时,仍需遵守 GPL-3.0 的源代码提供、许可证保留和版权声明要求。
如需联系开发者,请访问 https://www.aobp.cn 或 https://github.com/atangccc。
[!CAUTION]
本次更新为强制更新,请所有已接入 AstraHub 的站点管理员尽快完成升级。由于 AstraHub 服务端迁移及数据恢复需要,旧版本插件可能出现站点识别失败、自动上报失败、星链信息推送失败或显示“站点未注册”等问题。
本次更新加入了临时站点身份恢复能力。插件升级后,会使用站点本地保留的接入配置,与新的 AstraHub 服务端重新确认并恢复原有站点身份。
恢复内容包括:
由于恢复过程依赖限时开放的服务端恢复窗口,未及时升级的站点可能无法自动恢复原有接入状态。
password_reset_email_send.html 与 password_reset_email_reset.html 两个官方网关片段,以及 send.html / reset.html 页面,全部中文化(标题、副标题、按钮、提示、错误文案),采用居中的单栏美化布局。show_post_title:是否显示文章标题(默认开)。toc_show_h1:右侧目录是否包含正文 H1 级标题(默认关)。show_content_h1:是否渲染显示正文内手动撰写的 H1 标题(默认开),与目录 H1 开关相互独立。toc_width:文章目录宽度(默认 240,范围 180–320),由原「主题样式」分组迁入。default_post_cover:文章缺省封面图,由原「主题样式」分组迁入。trim、与官方片段对齐等问题已修复。!#strings.isEmpty(error) 判断与兜底文案「注册失败,请检查填写内容」。height:auto / min-height:100dvh / overflow:visible),不再出现框内滚动条。*{...} 与工具表达式 #strings 导致的 TemplateProcessingException。同时修正头像判断始终走占位逻辑的问题(th:object 上下文下误用 ${spec.avatar} 读不到值),现统一使用 ${user.spec.avatar} 等完整路径,已设置头像时正确显示真实头像。font-size:16px)、断点响应式(768 / 480 / 360 / 横屏)等适配。toc_width 与 default_post_cover 已迁出至新的「文章页面(post)」分组,所有代码引用同步由 style.* 改为 post.*。docs/使用教程.md 同步更新:目录与章节重新排序,文章页面成为独立第 17 节,并完整列出 5 个设置项说明。直接覆盖主题文件并重新构建(pnpm build)即可。设置项 post.* 已带默认值,旧站点的 style.toc_width / style.default_post_cover 配置将不再生效,请到「文章页面」分组重新确认。
本次更新主要优化主题的整体体验,包括统计字数准确性、热门文章覆盖范围与页面加载性能,并修复若干细节问题。主题功能逐渐增加完毕以及稳定,后续将拉长发版间隔,避免更新过于频繁。
变更完整日志: v1.0.6...v1.0.7
Generated from v1.0.7
Full Changelog: v2.3.0-beta.2...v2.3.0-beta.3
Generated from v2.3.0-beta.3
本版本更新主题到 0.9.46。\n\n主要内容:\n- 补齐服务端 SEO 的 og:url、og:site_name、robots、语言、canonical 分页和页面语义。\n- 修复分类/标签全部文章分页,统一使用 ?p=N,并完善 PJAX SEO 与结构化数据修复。\n- 桌面与通知中心数据型小组件增加 hydration 等待骨架,按尺寸保留卡片框架,数据就绪后自动替换真实内容。\n- Halo 最低版本保持 >=2.25.0,PluginLinks 按 2.2.1 契约适配。\n\n验证:pnpm run check、pnpm run build、依赖许可证与安全审计、发布包供应链校验通过。\n\n说明:当前本地 Halo localhost:8090 实际启用 theme-sky-blog-4,未将其响应冒充本版本的 theme-sky-blog-3 真页验证;Reload、Playwright 和性能真页复验需在切换到本主题后补做。
Generated from v0.9.46
变更完整日志: v1.0.4...v1.0.6
Generated from v1.0.6
首个公开发布版本
1.1.1:代码基础包名迁移至 io.github.shirainbown(应用市场审核整改),功能不变
要求 Halo 2.21+。
要求 Halo 2.21+。
Full Changelog: 1.0.10...v1.0.11
Generated from v1.0.11
Full Changelog: v1.0.9...1.0.10
Generated from 1.0.10
Full Changelog: v1.0.8...v1.0.9
Generated from v1.0.9
修复图片放大预览尺寸不完整。
修复本地实况照片编辑保存失败。
本次更新新增友链自助申请与萌 ICP 备案支持,并对友链页面和 Markdown 显示体验进行了优化。
升级后请在 Halo Console 中重载主题配置,以载入新增的萌 ICP 备案设置。
Full Changelog: v2.1.0...v2.2.0
Generated from v2.2.0
要求 Halo 2.21+。
/links/apply/submit 恢复为原生表单提交;使用 v2.3.0-beta.1 JSON 协商响应的集成需迁移至 REST API by @ruibaby in #158Full Changelog: v2.3.0-beta.1...v2.3.0-beta.2
Generated from v2.3.0-beta.2
th: 前缀,导致搜索引擎抓取到字面模板文本的问题 by @Helio-RC in #2变更完整日志: v1.0.3...v1.0.4
Generated from v1.0.4
homeward 是一款 Halo 公益寻亲系统插件,首版聚焦“后台发布案例、前台公益展示、404 页面公益增强、访客提交线索、管理员处理线索”这一条闭环。
/console/homewardplugin-ai-foundation 的结构化输出解析自然语言、网页、PDF、Word、TXT、Markdown 和 HTML 文档/homewarderror.status == 404 时注入寻亲模块/apis/public.homeward.muyin.site/v1alpha1/widget/apis/console.homeward.muyin.site/v1alpha1/**MissingPersonCase、ClueReporthomeward-clue-submitted-notification 站内通知,可搜索并多选 Halo 用户,默认接收人 admin插件依赖 Halo 官方 plugin-ai-foundation。安装并启用 AI Foundation 后,在归航寻亲设置的“AI
解析”分组中选择文本/网页模型;解析文档时优先选择声明支持 file input 的语言模型。模型设置保存的是
AiModel.metadata.name,留空时使用 AI Foundation 默认语言模型。
控制台入口:
--- 分隔多段文本,或一次选择多个文档;结果会逐条显示并进入编辑器核对。相关 Console API:
POST /apis/console.homeward.muyin.site/v1alpha1/cases/import/previewPOST /apis/console.homeward.muyin.site/v1alpha1/cases/import/preview/documentPOST /apis/console.homeward.muyin.site/v1alpha1/cases/import/batch/previewPOST /apis/console.homeward.muyin.site/v1alpha1/cases/import/batch/preview/documentsAI 结果不会自动保存或发布;网页抓取继续执行公网地址、响应大小和超时校验,文档上传限制为 10 MB。
结合当前案例、访客线索和公益展示闭环,下一步适合按风险从低到高推进:
metadata.name:homewardsite.muyin.homewardsrc/main/resources/logo.svg./gradlew test
./gradlew build
本地启动 Halo DevTools:
./gradlew haloServer
GPL-3.0 © lywq
feat: 重构按钮定位并增强健壮性
Full Changelog: v2.2.1...v2.3.0-beta.1
Generated from v2.3.0-beta.1
JsonMapper Bean 时编辑器 AI 与 RAG 组件无法初始化的问题。这是 MacWk Halo Theme 的首个稳定版本。主题以 Halo 原生服务端渲染为基础,面向软件目录、专题和内容站点提供完整的 MacWk 展示体验,同时保持与 plugin-software 的职责边界清晰。
plugin-software 的安全下载授权;公开详情不携带最终下载地址,受保护下载按需加载 Turnstile,并在授权成功后于新标签页打开下载。plugin-software 可用时展示软件目录和专题数据;插件未安装或未启用时隐藏相关入口并显示降级提示,Halo 原生内容仍可继续使用。>= 2.25.0plugin-software 1.0.0(软件目录、专题和下载功能需要;主题的 Halo 原生内容不依赖该插件)>= 22.12.0、pnpm 10(仅从源码构建主题时需要)frontend-macwk-halo-theme-1.0.0.zip。plugin-software,再按插件文档配置软件和专题数据。download-options/download-grants 公共契约;自定义页面不要直接读取 Console API、原始 Extension 或旧的详情下载 URL。plugin-software,/soft/... 和插件专题路由不可用是预期行为;主题自有的推荐、装机必备等页面会显示降级提示。Generated from v2.2.38
面向 Halo 2.25+ 的项目展示插件。它把项目的在线体验、源码、下载、版本、状态、已知限制和关联文章集中管理,并将可验证的项目入口展示给博客读者。



![项目编辑访问入口与关联内容]

/projects 项目展示页plugin-project-showcase-*.jar。/projects。插件要求 Halo >= 2.25.0。
也可以使用 JDK 21 从源码构建:
.\gradlew.bat build
构建产物位于 build/libs/。
/projects,也可以在关联文章顶部显示体验卡。项目不会因为填写了体验地址而自动标记为开源。只有单独填写源码地址时,前台才会显示源码入口。
体验说明是公开内容,不应填写密码、密钥或其他敏感信息。需要测试账号时,建议填写账号申请方式,或使用权限受限且可定期重置的公开测试账号。
封面和截图都使用 Halo 附件库。在项目编辑窗口中点击对应的“剪贴板封面”或“剪贴板截图”区域,再按 Ctrl+V 即可上传剪贴板图片;也可以继续使用文件上传或附件库选择。截图最多保存 12 张,并可在后台拖拽调整顺序。没有单独设置封面时,第一张有效截图会作为项目封面。
Bilibili 视频请填写标准页面地址,例如 https://www.bilibili.com/video/BV1xx411c7mD。插件不接受短链接或任意 iframe HTML,只会为通过域名和视频编号校验的链接生成播放器。
插件只将 HTTP 2xx 响应视为可访问。检测结果是一次网络可达性观察,不代表项目的安全性、正确性或生产可用性。
为防止 SSRF,检测客户端会拒绝私网、回环、链路本地、组播和特殊用途地址,并对每次重定向重新执行安全校验。
公开展示的数据只保留 HTTP(S) 链接和站内附件路径;Bilibili 播放器固定使用 player.bilibili.com,不会执行用户填写的嵌入代码。
player.bilibili.com 播放器。未点击时不会加载播放器。/projects 和只读公开 API 对访客可见。请勿在项目名称、简介、体验说明或链接中填写敏感信息。GET /apis/api.projectshowcase.xsstar.cn/v1alpha1/projects
GET /apis/api.projectshowcase.xsstar.cn/v1alpha1/posts/{postName}/projects
接口只返回已公开项目,并且不会暴露 Halo 扩展资源的完整内部字段。
/projects 没有内容:确认至少有一个项目打开了“公开展示”。2xx 状态码。问题反馈请提交到 GitHub Issues。报告问题时请附上 Halo 版本、插件版本、复现步骤和相关日志,并删除其中的敏感信息。
环境要求:JDK 21、Node.js 20+、pnpm 10。
.\gradlew.bat test
.\gradlew.bat :ui:buildFrontend
.\gradlew.bat build
Docker 可用时,可以运行 ./gradlew haloServer 启动本地 Halo 开发环境。
1、增加明信片首页
2、修改文档说明
3、修改文档分享点赞位置,更符合阅读方式
4、增加登录信息显示
5、修复情侣时间地区问题
6、修复分享微信二维码不显示
7、修复分享微信不能访问
feat(oauth): 实现OAuth授权码和登录会话的容量限制与过期清理
Full Changelog: https://github.com/liuyiwuqing/halo-plugin-sso/commits/1.1.0
Generated from 1.1.0
Full Changelog: v1.0.0-beta.5...v1.0.0-beta.6
Generated from v1.0.0-beta.6
这是 Software Manager for Halo 的首个稳定版本,为 Halo 提供独立、主题中立的软件内容管理、公开查询和安全下载能力。主题可以通过 Finder、Theme Router 或版本化 REST API 接入,插件本身不依赖任何特定主题。
softwareFinder、公共主题路由和 v1alpha1 REST API,公开 VO 与 Console/原始 Extension 分离,方便不同主题或客户端消费。storageKey、提取码或密码等敏感字段;通过短期 download-grants 授权获取下载信息,并支持 Cloudflare Turnstile 验证。no-store。SoftwareApp 注册为 Halo 评论资源;可选接入 AI Foundation,为软件摘要、详情和 SEO 提供 Console 编辑建议,不影响核心软件管理功能。>= 2.25.0>= 1.0.0-SNAPSHOT 且 < 2.0.0(可选,仅用于 AI 编辑辅助)software 插件 JAR。GET /download-options 和 POST /download-grants 获取下载授权,不应继续依赖详情接口中的最终下载 URL。v1alpha1 公共契约、getHome()/SoftwareHomeVo 和主题 Router 均属于跨项目接口,升级主题或自定义客户端时请同步查看 主题 API 文档 与 REST API 文档。Fly主题正式发布!
1、增加明信片首页
2、修改文档说明
3、修改文档分享点赞位置,更符合阅读方式
4、增加登录信息显示
5、修复情侣时间地区问题

Full Changelog: 1.20.4...1.20.5
Generated from 1.20.5
/robots.txt 等根路径冲突的问题Full Changelog: v2.1.0...v2.2.0
Generated from v2.2.0
Full Changelog: v0.1.8...v0.2.0
Generated from v0.2.0