-
Notifications
You must be signed in to change notification settings - Fork 10.2k
Closed
Description
前置条件
- 已经在 issues 列表中搜索了相关问题。
- 这是 Halo 项目本身存在的问题,如果是非项目本身的问题(如:安装部署问题),建议在 Discussions 提交。
- 已经尝试过停用所有的插件,排除是插件导致的问题。
- 如果是插件和主题的问题,请在对应的插件和主题仓库提交。
系统信息
- halo版本: 2.22.12
- 已启动插件:plugin-links 及 plugin-comments
- 插件版本:最新版
使用的哪种方式运行?
Docker Compose
发生了什么?
在对plugin-equipments进行前台评论功能适配及后台获取评论来源开发时:
发现当多个插件都实现 CommentSubject<Plugin> 后,Halo 只能使用第一个supports()的实现来处理所有 Plugin 类型的评论。
| 状态 | 评论来源显示 |
|---|---|
| 只启用 plugin-equipment | ✅ 正确显示"装备" |
| 只启用 plugin-links | ✅ 正确显示"链接" |
| 两个都启用 | ❌ 全部显示"链接"(冲突) |
希望各方能修复:多个 CommentSubject 能够正确按 supports() 结果选择对应的处理器。
复现步骤
- 关闭 plugin-links 后,评论来源正确显示为"装备"
说明我插件里 CommentSubject 实现是正确的
- plugin-links 的评论显示为"未知"
因为我关闭了plugin-links插件,即CommentSubject 被禁用了
- 通过排查equipment插件的日志输出情况,日志中没有 getSubjectDisplay() 的调用,但评论来源正确显示了
也就说明问题是两个插件的 CommentSubject 实现存在冲突。当两个插件都启用时,Halo 可能只选择其中一个(如plugin-links 的)来处理所有 Plugin 类型的评论。
相关日志输出
附加信息
No response
Metadata
Metadata
Assignees
Labels
No labels