关于 CommentSubject 发现/选择机制问题 #8302
Replies: 8 comments 3 replies
-
|
plugin-equipment 都没有给评论来源, 你装备设置了评论?还有你是什么主题 |
Beta Was this translation helpful? Give feedback.
-
哈哈!感谢原鱼佬回复.我对你的插件做了一些修改.用的是Sky Blog Theme comments评论数据源我测试了是没问题的,但是Halo 只能使用第一个supports()的实现来处理所有 Plugin 类型的评论😵 |
Beta Was this translation helpful? Give feedback.
-
你是自己对插件做了修改? 还是页面 |
Beta Was this translation helpful? Give feedback.
-
|
是对插件做了修改. |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
|
那有问题可能是你自己改出问题了 |
Beta Was this translation helpful? Give feedback.
-
|
鱼佬qq我扣你,我在鱼圈 |
Beta Was this translation helpful? Give feedback.
-
经过讨论(冲突的根源):Halo 的 CommentSubject 扩展点是基于 GVK (Group/Version/Kind) 来路由的。如果 plugin-links 和 plugin-equipment 都声称 plugin.halo.run/v1alpha1/Plugin 这个资源类型,那么当系统需要显示评论来源时,它会遍历所有的 CommentSubject 实现。 1. supports() 的竞争:如果两个插件的 supports() 都返回 true,Halo 通常只会采用加载顺序靠前的那个实现。 2. 自定义 GVK 的必要性:通过定义 equipment.kunkunyu.com/EquipmentPage,为装备插件新建了一个独立的命名空间。
这样就能解决后端 getSubjectDisplay 的冲突,并且让前端扩展点 comment:subject-ref:create 能够通过唯一的 kind 和 group 精确匹配到对应的跳转链接和提示文字。 参考示例:plugin-equipment |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
前置条件
系统信息
使用的哪种方式运行?
Docker Compose
发生了什么?
在对plugin-equipments进行前台评论功能适配及后台获取评论来源开发时:
发现当多个插件都实现
CommentSubject<Plugin>后,Halo 只能使用第一个supports()的实现来处理所有 Plugin 类型的评论。希望各方能修复:多个 CommentSubject 能够正确按 supports() 结果选择对应的处理器。
复现步骤
相关日志输出
附加信息
No response
Beta Was this translation helpful? Give feedback.
All reactions