| 摘要 | Discourse 日历与活动 为您的 Discourse 站点增添了动态且交互式的日历和活动功能。 | |
| 安装指南 | 此插件已随 Discourse 核心捆绑发布。无需单独安装该插件。 |
启用日历和活动
您可以通过开关或从设置中启用日历和活动插件,两者均可在您的 admin/plugins 页面访问:
功能
毫不意外地,Discourse 日历与活动 为您的 Discourse 站点增添了日历和活动功能。借助这些功能,您可以创建单独的主题日历以跟踪重要场合或时间线,在分类中显示日历,添加节假日日历以标记假期、缺席或病假,创建交互式活动话题,以及显示所有即将举行的活动的简易日历摘要。
日历
可以在多个主题中创建自定义日历,您可以选择将希望获得更高可见性的日历显示在分类的话题列表上方。
您可以在以下链接中找到有关如何创建和使用日历的更详细信息:
活动
活动功能允许在话题中插入交互元素,您的成员可以使用这些元素报名参加或参与社区的活动。所有活动都会汇总在一个专用的全站日历中,并可选择在导航菜单中添加一个简易访问链接。您可以在以下链接中找到有关如何创建和使用此功能的更多信息:
请勿将其与 Pavilion 的 Events 插件(注意是复数)混淆
日历设置
| 名称 | 描述 |
|---|---|
| calendar enabled | 启用 discourse-calendar 插件。这将在话题的第一篇帖子中添加对 [calendar][/calendar] 标签的支持。 |
| holiday calendar topic id | 员工假期/缺席日历的话题 ID。 |
| holiday status emoji | 定义用于假期状态的 emoji。 |
| delete expired event posts after | 过期活动相关的帖子将在 (n) 小时后自动删除。设置为 -1 以禁用删除。 |
| all day event start time | 未指定开始时间的活动将在此时间开始。格式为 HH:mm。对于早上 6:00,请输入 06:00 |
| all day event end time | 未指定结束时间的活动将在此时间结束。格式为 HH:mm。对于下午 6:00,请输入 18:00 |
| calendar categories | 在分类顶部显示日历。必填设置是 categoryId 和 postId。例如:categoryId=6;postId=453[1] 其他有效设置:tzPicker[2], weekends[3] 和 defaultView[4]。 |
| calendar categories outlet | 允许更改哪个出口应显示分类日历。 |
| working days | 设置工作日。您可以使用帖子中的 timezones 标签显示组的可用性,例如:[timezones group=admins][timezones] |
| working day start hour | 工作日开始时间。 |
| working day end hour | 工作结束时间。 |
| close to working day hours extension | 设置工作日时间内的扩展时间,以高亮显示时区。 |
| calendar automatic holidays enabled | 根据用户区域自动设置假期状态(注意:您可以在插件设置中禁用特定的自动假期) |
| map events title | 基于分类映射侧边栏日历的标题。默认为 “Upcoming events”(即将举行的活动) |
活动设置
| 名称 | 描述 |
|---|---|
| discourse post event enabled | 启用活动功能。注意:还需要启用 calendar enabled。 |
| discourse post event allowed on groups | 允许创建活动的组。 |
| displayed invitees limit | 限制活动中显示的受邀者数量。 |
| display post event date on topic title | 在话题标题后显示活动日期。 |
| use local event date | 在话题标题后使用本地日期而不是相对时间。 |
| discourse post event edit notifications time extension | 延长(以分钟为单位)活动结束后 going(参加)受邀者仍会收到原始帖子编辑通知的时间段。 |
| discourse post event allowed custom fields | 允许每个活动设置自定义字段的值。 |
| events calendar categories | 在分类顶部显示活动日历。 |
| sort categories by event start date enabled | 启用按活动开始日期对分类话题进行排序。 |
| disable resorting on categories enabled | 允许分类禁用用户对活动分类进行排序的能力。 |
| sidebar show upcoming events | 在侧边栏“更多”下显示即将举行的活动链接。需要 post event enabled |
| map events to color | 将活动颜色分配给指定的标签或分类 |
![]()
![]()
discourse-post-event/events.json端点现在增加了一个参数,用于在简单响应和详细响应之间切换。要获取详细响应,您可以添加?include_details=true:
/discourse-post-event/events.json?include_details=true
直播活动
对于直播活动,请使用直播功能让成员观看活动并同时参与聊天。
直播活动包括:
- 视频流(例如使用 YouTube)
- 使用 Discourse Calendar and Events 的日历活动
- 为活动自动创建的配套 聊天 频道
直播活动的前提条件
要使用直播活动,您必须启用 chat enabled,因为直播会创建聊天频道以配合您的活动,此外还需要启用 discourse post event enabled 和 calendar enabled。
配置直播
有几个设置需要配置:
livestream enabled:开启此选项以使用直播活动。livestream chat allowed groups:设置为Trust Level 0以允许所有登录用户在活动期间聊天。
创建直播活动
要创建直播活动:
- 打开一个新话题。
- 在活动编辑器中粘贴活动视频链接(例如 YouTube URL)。
- 在活动编辑器工具栏中选择 + 图标,然后单击 Create Event(如果活动尚未添加到您的话题中),然后使用该活动的详细信息更新该活动。
- 为话题添加
#livestream标签。
您将看到活动、直播以及右侧的配套聊天频道已创建。
一旦任何用户在活动中点击 Going,他们就会自动加入聊天频道,从而参与对话!
与其他插件的集成
您可以使用此插件中的组件与 Right Sidebar Blocks 配合使用。您需要确保在 Right Sidebar Blocks 组件中启用了所需的路由。块名称将为 upcoming-events-list。历史上,日历插件本身需要额外的设置,但现在已简化。
这是侧边栏日历的默认外观。
如果您不希望显示时间,可以在组件的块设置中添加空的 timeFormat 值。
由我们托管?此插件在我们的 Business 和 Enterprise 套餐中可用 Calendar | Discourse - Civilized Discussion
categoryId 是日历将显示顶部的分类。
postId 是您使用 [calendar][/calendar] 放置日历的帖子 ↩︎它可以在日历右上角显示时区选择器。默认为 False,您可以通过 tzPicker=true 启用它 ↩︎
它可以从日历中隐藏周六和周日。默认为 True。您可以通过 weekends=false 将其设置为 false. ↩︎
defaultView 将设置日历的视图(天、周等)。可以设置为:
defaultView=agendaDay
defaultView=agendaWeek
defaultView=month (默认)
defaultView=listNextYear ↩︎













