精选话题

|||
-|-|-|
:discourse2: | 摘要 | 基于标签的精选主题。
:hammer_and_wrench: | 代码库链接 | Manuel Kostka / Discourse / Components / Featured Topics · GitLab
:open_book: |刚开始使用 Discourse 主题? | Discourse 主题使用入门指南

安装此主题组件

设置


除其他选项外,您还可以选择多个标签来精选主题,并在两种布局选项之间进行选择:“卡片”或“列表”。

模板


.featured-topics {
  &__wrapper {
  }
  &__container {
  }
  &__heading {
  }
  &__topic-wrapper {
  }
  &__topic-container {
  }
  &__topic-tag {
  }
  &__topic-thumbnail {
  }
  &__topic-details {
    .topic-author {
    }
    .topic-title {
    }
    .topic-excerpt {
    }
  }
}
34 个赞

我很喜欢!这可能是一个愚蠢的问题,但图片必须存储在哪里才能被提取?

2 个赞

谢谢!图片是从主题的第一个帖子中提取的。

2 个赞

老实说,我非常希望有一个这样的 Theme component,但用于热门话题(这种功能可能需要一个 Plugin)。

也许一旦 Discourse 在 2.9 版本中实现了“热门”分类话题排序选项,就可以更轻松地实现它?:thinking:

至于在精选卡片中显示标签的选项,它如何处理带有多个标签的话题?标签在移动视图的精选卡片上会显示出来吗?

2 个赞

卡片内容在移动设备和桌面设备上是相同的,只是在移动设备上卡片会换行显示内容,并且没有固定的高度。如果同一主题有多个精选标签,卡片将显示默认标签列表中排在最前面的标签。我相信这是按字母顺序排列的。

关于热门话题,您可以像在“精选图块”组件中一样选择列表算法。目前,这些算法包括“最新”和各种“热门”选择:

那么,“热门”与“每日热门”或“每周热门”有何不同?无论如何,当 Discourse 核心有新的排序和过滤算法时,就像提到的“热门”算法一样,它也应该适用于该组件。

1 个赞

嗯,它不必局限于特定的时间段。热门话题可能来自一小时前、一天前、一周前等等……

我希望我能表达清楚…… :sweat_smile:

另外,是否有可能有多行特色卡片?

2 个赞

此组件在桌面端仅显示一行卡片。在移动端,您可以显示任意数量的卡片(有一个最大主题数设置)。

如果为此组件编写自定义 CSS,则在桌面端显示更多行是很容易实现的。但我不会以该组件本身来支持这种情况,因为我认为它还需要自定义布局。

1 个赞

好的,这很公平。 :+1:

我想将这个 Theme component 与一个正在进行的概念联系起来。

另外,我之前提到的“热门”类别主题排序选项已经(某种程度上)存在,形式是 #plugin:broken-plugin。

1 个赞

好的,我明白了……你只是让我改了措辞 :wink: 我写了两次“feed”,但我把它改成了“column”。这个组件的目的是展示特定的精选主题。我不怀疑你也能让它更像一个动态的 feed。但如果那是你的目标,我宁愿直接调整现有的列表视图来实现。你知道的,就像使用 Topic List PreviewsTopic List Thumbnails 这样的组件,并将列表项的样式调整得更像卡片。直接在列表上操作可以与 Discourse 的导航元素和过滤器完全集成。而这个组件无法实现这一点。

1 个赞

是的,没错。我只是想看看我有哪些可用的选项。这个帖子在我浏览 Discourse Meta 时正好发布,所以引起了我的注意。

2 个赞

嗯,没有显示缩略图 :frowning:

1 个赞

嗯,当我取消选择所有内容时,我只看到了他的外观 :upside_down_face:

您尝试过不同的浏览器吗?如果不是浏览器问题(如果是,请告诉我您的设置),我可以检查您网站上的 CSS。但您需要在此处或私信中分享您的网址。

1 个赞

这个组件还在工作吗?

为什么它不再起作用了?它没有被标记为损坏或其他什么,而且它才用了 3 个月。

4 个赞

喜欢这个组件,非常感谢!:tada:

如果能有一个“置顶”的精选主题(例如“欢迎来到本论坛”主题),即使主题是从 #featured 中随机选择的,也能一直显示,那就太棒了。我认为这不仅对我的用例很有帮助,对许多其他人也是如此。可以实现吗?

1 个赞

帮助 @manuel
我喜欢这个组件!但我有一个小问题。 :point_down:

在我的管理员帐户上,我可以很好地看到卡片。

在我的“普通”用户帐户上,我看到空白区域,卡片不显示。

在不得不另想办法之前,任何帮助或建议都将非常有帮助 :smiley:

1 个赞

您似乎使用了一个普通用户无法看到的标签?

您可以通过组件设置来隐藏卡片上显示的标签。但标签本身必须对应该看到带标签主题的精选卡片的用户组可见。

3 个赞

:woman_facepalming:
这解决了问题。
我只是编辑了我的标签组,并认为我会隐藏那个,这样就没有人知道它在那里,只有管理员知道。谢谢你!!

1 个赞

感谢您的建议,@diabolicvincent!不过我想我不会将其作为一项功能来实现。其中一个原因是(正如在致谢中所提到的),我并没有编写这个组件的逻辑。对我来说,它已经相当复杂了,我不想自己去弄乱它。

更广泛地说,从哲学、概念上来说…… :nerd_face: 我实际上认为,当官方内容可以轻松地区分于用户生成内容时,这是更好的UI设计。在这方面,我其实不太喜欢在用户主题的动态列表中置顶主题。

有没有办法在不使用标签的情况下自动显示最新帖子?我不想使用标签手动将帖子推送到精选部分。