要在 topic-footer-buttons 上方显示主题类别名称和标签

您好团队,

我想在 topic-footer-buttons 的上方,并且在主题标题下方显示主题类别名称和标签,如下图所示:

我注意到我们在 topic.hbs 模板中有一个 PluginOutlet “topic-above-footer-buttons”,但它仅对登录用户显示。

是否有其他方法可以在 topic-footer-buttons 的上方为登录用户和匿名用户显示主题类别名称和标签?

谢谢。

请提供一些建议,将主题类别名称和标签显示在主题页脚按钮上方。

我冒昧地说这可能是一个错误:为什么将插件出口仅限于 CurrentUser?它传递的数据没有任何需要用户登录的内容。

我的建议是将其移出 if 子句,以便在任何一种情况下都可以访问它。

所以你有两个选择:

  • 考虑向核心提交一个 PR 来修复这个问题,这样你就可以在不覆盖整个模板的情况下将其用于匿名用户。
  • 暂时覆盖模板。

如果你提交 PR,请注意不要破坏任何现有测试(你可能需要同时修改它们)。

1 个赞

谢谢 Robert 的回复

Discourse 核心中有一个名为“discourse-presence”的插件,它使用此插件插槽来显示用户在主题中的在线状态。这仅对登录用户有效,并且是一个有效用例。

所以我认为我们应该创建一个 PR,在“this.loadedAllPosts”条件的下一行添加一个新的插件插槽。

例如: <PluginOutlet @name="topic-below-container-posts" @tagName="span" @connectorTagName="div" @args={{hash model=this.model}} />

谢谢。

抓得好,但我认为你不应该基于现有插件来做决定。但如果该插件不具备故障安全功能,你可能也想在那里提交一个 PR :sweat_smile:
出口的名称通常基于位置。你打算如何称呼任何额外的出口?对于同一位置有两个出口,其使用仅基于某人是否登录,这听起来有点混乱……
无论如何,提交吧,它会被审核。

1 个赞

是的,感谢您的建议。