类别横幅

不……Discourse 并不为标签存储描述,仅为分类存储,因此使用此组件无法实现该功能。

虽然可以通过主题设置修改标签横幅组件以添加描述,但如果您计划使用超过几十种标签,这种方式将变得难以管理,因此并非理想选择。

最佳方案是创建一个插件,为标签添加描述功能……不过这将显著增加复杂度。

2 个赞

这个组件是否会在类别设置未配置文本时,自动从该类别首帖的第一段提取内容?也就是那个默认的“关于”内容。我一直都是这样使用的。

如果有一个插件能为每个标签页自动创建一个默认的“关于”页面,是否可行?或者这是否是一个值得尝试的方向?即先创建该页面,然后让插件在针对标签页工作时指向该帖子。

是的,但 Discourse 会从帖子中提取这段文本并将其设置为分类描述……因此大部分工作已经完成,我只是在这里复用了它。

或许可以获取带有特定标签的最旧主题,并将其用作描述,从而实现类似的功能?我需要进一步研究一下。

3 个赞

我太笨了……还是说没有办法向 Git 仓库提交问题:

??

1 个赞

您可以通过在此处发布详细信息来完成此操作 :slight_smile:

3 个赞

此请求是否已通过此主题组件、其他主题组件或方法得到解决?我正在寻找此功能,以便为用户提供他们登陆特定分类页面时的上下文,例如通过网络搜索或在社交媒体上分享的链接,而不是通过分类主页面进行访问。

1 个赞

我有两个 Discourse 托管的站点,我在其中(通过 discourse category icons component)将默认的挂锁图标替换为了 Font Awesome 图标。但是,挂锁仍然显示在类别横幅中——不仅仅是我从这些站点中显示的那个类别,而是对于所有应该显示图标的类别,我仍然看到默认的挂锁图标。

1 个赞

我在 Discourse 的最新版本(2.9.0.beta3)中发现了与此插件的冲突,该冲突发生在您向类别或子类别添加图片时。

该插件会将“关于”帖子的第一行文本提取到横幅中。当您向类别添加图片时,Discourse 的最新版本会将相同的文本提取到其图片旁边的标题中。

由此产生的问题是,每个类别和子类别都必须具有图片,并且“显示描述”设置已关闭,否则任何类别都不能具有图片,因为这会导致描述在横幅中和其下方重复显示。所以这是全有或全无。

我不太确定这是否真的是此插件的问题,或者我是否错过了在 Discourse 中关闭类别内图片和描述的方法,以免破坏我的类别横幅。

1 个赞

我通过使用另一个插件解决了这个问题:Discourse Category Header theme component

不幸的是,最终结果不如这个好看。我想知道是否可以将另一个插件的选项复制粘贴到这个插件中,因为唯一明显的区别是插件是针对 banner 还是 header div。这个插件的样式更好,而那个插件有更多的选项可以打开和关闭以及进行自定义。

1 个赞

在自定义 CSS 中,我可以在类别和描述文本之间添加什么来减小行距?

1 个赞
div[class^="category-title-header"] .category-title-contents .category-title {
    margin-bottom: 0;
}
2 个赞

太好了!谢谢你 :pray:

2 个赞

将这些横幅设为可点击怎么样?因为现在横幅只包含分类的“关于”主题的第一行。通常,“关于”主题中还有更多信息。通过使其可点击,可以更容易地了解比第一行更多的信息。当然,人们也可以创建指向“关于”主题的链接。但是,当您已经在该主题中时,您会有一个指向自身的链接。这看起来像一个丑陋的技巧。只是一个建议 :slight_smile:

3 个赞

我已经对该组件进行了更新,使其可以与 Tag Banners 集成

当同时安装这两个组件,并且您按类别和标签进行筛选时,标签名称现在将显示在类别横幅内,而不是堆叠横幅:

8 个赞

谢谢 Kris,又一个很棒的集成!

但有一些问题:

  • 在移动视图中对我不起作用(即使在桌面浏览器上—没有 Web 控制台错误)
    • 分类横幅在桌面和移动视图中均正常显示,但标签横幅仅在桌面视图中显示
  • 当也与标签图标组件一起使用时
    • 标签具有通用的标签图标_以及_由标签图标定义的图标(在这种情况下,最好只显示标签图标定义的图标)
    • 当标签图标定义的图标与分类横幅颜色相同时,图标将渲染为不可见(与分类横幅 + 分类图标集成类似的问题—如果可能,也请允许标签图标匹配此组合的横幅文本颜色)
    • 完全删除标签横幅中的连字符/下划线会隐藏标签图标中定义的图标
2 个赞

感谢您的快速反馈!

我已添加了一个修复程序,解决了标签在移动视图中不显示的问题:

我还添加了一个设置,用于暂时禁用标签图标,这是为了更好地与标签图标组件协同工作而采取的临时解决方案。我需要花更多时间才能与标签图标组件实现真正的集成。

3 个赞

感谢您提供的快速解决方案,同时我还有另一个问题需要您帮忙 :wink:

当使用“分类横幅”和“标签横幅”并设置“删除连字符/下划线”为 true 时,标签名称(例如 with-hyphens)会在标题下方显示,没有连字符,并且是超链接的,但链接无效(/tag/with hyphens)并导致 404 错误。

2 个赞

又一个好消息,再次感谢!

此修复依赖于一次小的 Discourse 更新:DEV: add optional `displayName` parameter for `discourse-tag` by awesomerobot · Pull Request #21391 · discourse/discourse · GitHub

因此,一旦 Discourse 和组件更新后,没有连字符或下划线的标签将正确链接。

2 个赞

我已经成功地为我的某些类别添加了横幅,但无法为其他类别添加。

不适用的类别名称类似于“Weather - General”,即名称中间有空格-连字符-空格。如果我将名称更改为“Weather-General”,即连字符周围没有空格,则会按预期显示横幅。在这两种情况下,类别的 slug 都相同——“weather-general”,所以我不太确定为什么在一种情况下它不被接受为有效值,而在另一种情况下却被接受。

1 个赞

15 篇帖子已拆分为新主题:Can I align the category banner away from the sidebar?