Discourse政策

||||
-|-|
:discourse2: | 摘要 | Discourse Policy 能够确认用户是否已阅读或完成某项操作,并提供可选的提醒功能。
:open_book: | 安装指南 | 此插件已捆绑在 Discourse 核心代码中。无需单独安装该插件。

功能

Discourse Policy 与投票(polls)有着许多共同之处,其目标是确保小组成员通过点击按钮来接受某些政策。

它有一些区别于投票的特定功能:

  1. 必须应用于某个群组。

  2. 它可以选择性地每周或每天催促群组成员点击接受政策。

  3. 用户体验(UX)设计使得查看谁接受了政策、谁未接受政策变得非常简单。

配置

截图

点击接受之前

点击右上角的“灰色”人物图标后

点击接受后

创建政策

Discourse Policy 注册了一个自定义的 [policy] BBCode 元素。这意味着你需要在你希望展示该政策的文章中编写这段代码块。

[policy group=founders reminder=daily]
我接受此政策,直到我点击接受之前,它每天都会打扰我
[/policy]

在这种情况下,该政策适用于 founders 群组,并且会每天向所有未接受该政策的用户发送提醒。

站点设置

policy_enabled:在站点上启用 Discourse Policy 插件。

policy_restrict_to_staff_posts:政策仅可出现在员工(staff)发布的文章中。

policy easy revoke:同时显示接受和撤销按钮。

BBCode 属性

[policy] 元素可以接受以下属性。

  • group:政策适用的群组名称 必填
  • version:政策版本号,增加版本号以要求所有用户重新接受政策
  • reminder:提醒群组成员接受政策(每周或每天),可选,默认关闭
  • accept:用于接受按钮的文本,默认为“接受政策”
  • revoke:用于撤销按钮的文本,默认为“撤销政策”
  • renew:用户需要重新接受政策的天数或描述周期的文本(每月、每季度或每年)
  • renew-start:续期开始的第一个日期,例如 17-10-2017,如果你想设置续期周期为每半年一次(1月、6月)时非常有用
  • add-users-to-group:接受单个群组作为输入;接受政策的用户将自动加入此群组(当政策被手动撤销或政策版本更新时,用户将被从该群组中移除)
  • private:隐藏接受/未接受政策的用户

:information_source: 后端任务 检查政策提醒 每 6 小时运行一次。如果 reminder 元素设置为每周或每天,尚未接受政策的用户将收到通知提醒以接受政策,仅当他们在过去一周或一天内未收到过该政策的提醒通知时。

使用示例

基本政策:

[policy group="team" reminder="daily" accept="接受" revoke="忽略" version="1"]
我已阅读、理解并确认此政策。
[/policy]

增加修订版本号,以要求每个人阅读更新内容:

[policy group="team" reminder="daily" accept="接受" revoke="忽略" version="2"]
我已阅读、理解并确认此政策。(最后更新于 [date=2020-04-23 timezone="America/Los_Angeles"])
[/policy]

定期审计任务:

[policy group="audit_committee" reminder="weekly" renew="90" renew-start="01-07-2019" version="1" accept="任务分配完成"] 
我已确保有人负责此项季度审计任务。
[/policy]

更新日志

待办事项

  • 新政策的可选即时提醒
  • 可能允许特定群组应用政策(扩展员工权限)
65 个赞
How to make users to explicitly agree to ToS
Have-to-read topics? (or RSVP topics)
Plugin to maintain group membership based on accepting a Policy
Ability to view if PM has been read (Moderation ability?)
Group Membership base on accepting a Discourse Policy
Force existing users to accept ToS
How to get email notifications when new users have signed up?
Improving Discourse Policy for large groups
Dashboard Report - Unaccepted Policies
Is there a plugin that helps with Age Verification on the site?
Restrict posting in a category until they "like" a topic
Restrict posting in a category until they "like" a topic
Topic should be a notification
Plugin or other option to require a post and a like?
Watching category mandatory
Policy reminder cannot be left empty
Bundling more popular plugins with Discourse core
Age prompt for NSFW catagories
Button to join group on post
Bump topic with API
Publish group read state
Delivered and read notifications?
Habit tracking within Discourse...is it possible?
Changing policy texts
Agree to additional terms before joining group
Know who has viewed your post
How can I compare arbitrary revisions of a post?
Require accepting new terms (after changes) as a modal inside forum
Tips into building a community aside a variety of already existing tools
How to force existing users to accept ToS
Plugin to gather approvals / signatures on an initiative?
Recommnded plugins for supporting a tech community run by a big enterprise?
AUP location
I can't display my policy
Best practices for communicating to user base