Discourse 关注分类按钮

:discourse: 摘要 Watch Category Button(关注分类按钮)在帖子中添加一个标记 span,该 span 会成为一个“关注此分类”按钮。
:hammer_and_wrench: 代码仓库 https://github.com/pacharanero/discourse-watch-category-button
:open_book: 初次接触 Discourse 主题? Discourse 主题使用入门指南

安装此主题组件

:information_source: 此主题组件利用已登录用户的会话来更新分类通知级别;无需 API 密钥。

功能

  • 使用对清理器(sanitizer)安全的 span,在帖子内添加一个“关注此分类”按钮。

  • 点击该按钮会将当前用户对当前分类或通过 CategoryId 选定的分类的通知级别设置为正在关注(Watching)。

  • 只有由允许的用户组(默认:staff)发布的帖子才会被转换为按钮(这是为了防止该主题组件被滥用,通过误报的方式迫使用户关注分类)。

  • 支持指定特定的分类 ID 或当前帖子所属的分类。

  • 集成现有的 Discourse 关注通知功能,不会改变用户在其偏好设置中、按分类或在邮件退订中对关注状态的其他管理方式。

用法

设置特定分类

<span data-watch-category="3">Watch this category</span>

使用当前帖子所属的分类

<span data-watch-category="current">Watch this category</span>

效果:

设置

此组件目前尚未包含主题设置。待确认没有重大错误且此组件对其他用户确实有用后,下一步将添加此功能。

安全与隐私考量

  • 目前,这些按钮只能由 #staff 用户创建。
  • 更改通知设置需要用户明确点击。
  • 不使用任何 API 密钥;它依赖于已登录的会话。

路线图构想

  • 允许通过主题设置配置可以创建按钮的用户组。
  • 允许通过主题设置配置按钮样式。
  • 允许配置通知级别(例如:跟踪、关注、静音)。

贡献

欢迎贡献!请在 GitHub 代码仓库中开启 Issue 或提交 Pull Request。理想情况下,请改善本组件,而不是通过 Fork 它来修改 ALLOWED_GROUPS 或进行其他小改动。

相关主题

在研究是否已有类似组件时,我发现有几个主题请求了相似的功能:

Change notification level with a link
Can I create a link to subscribe to a category? - #3 by david
Make watching a category more prominent for users
Notification setting button with context

6 个赞