我正在尝试使用日历插件,但它会在事件发生后将其从日历中删除,尽管设置已设置为 -1 以禁用删除。我也尝试将到期时间设置为两年(17532 小时),但这也会在事件发生后立即将其删除。
我发现唯一可以保留日历中事件的方法是删除结束时间和日期。
有人知道为什么 -1 不起作用,以及解决方案是什么吗?
谢谢
我正在尝试使用日历插件,但它会在事件发生后将其从日历中删除,尽管设置已设置为 -1 以禁用删除。我也尝试将到期时间设置为两年(17532 小时),但这也会在事件发生后立即将其删除。
我发现唯一可以保留日历中事件的方法是删除结束时间和日期。
有人知道为什么 -1 不起作用,以及解决方案是什么吗?
谢谢
你好,欢迎 @Helen22 ![]()
我最近一直在审查这个插件,并且在我的测试站点上正好有几个日历可以用来对照检查。能否请问一下,在出现问题的地方,你使用的是哪种类型的日历?
我在主题中嵌入了日历,那个日历保留了已过期的日历项:
我还将其用作分类标题:
此外,我还为事件类型的项设置了一个 /upcoming-event 日历:
我目前还没有将事件类型的日历用作分类标题,所以我怀疑问题可能出在那里…… ![]()
实际上,让我再确认一下结束时间……
是的,看起来添加结束时间会导致事件从 /upcoming-event 日历中消失,这确实与其他日历的行为不一致。我认为我们应该将此问题转移到 Contribute > Bug 分类,看看能否请人帮忙查看。![]()
(顺便说一句,为了彻底起见,非事件类型的日历即使包含结束日期,也按预期正常工作。)
如果您指的是 delete expired event posts after 设置,我认为它会阻止删除帖子,但不会阻止显示活动。此外,我认为这里的“活动”一词具有误导性,它在日历部分,所以我认为它更多地意味着“与日期相关的事物”,而不是“可以回复的活动”。
这是一个日历活动,而不是一个事件活动。
活动活动旨在显示在 /upcoming-events 中,因此没有过去的内容……
我无法确定这个怪癖是它确实显示了没有结束时间的过去事件,还是它不显示有结束时间的过去事件。如果这是预期与实际行为之间的情况,也许我可以将其包含在插件主题重写中?
如果一个事件没有结束时间,它是否可能发生在过去?

我认为现在的行为是符合预期的,不显示过去的事件(即结束时间在过去的事件),但提供一个能够显示所有事件的选项可能会很好(但这可能会带来意外的 UI 影响,我在这里想到的是:https://github.com/paviliondev/layouts-event-list-widget)。
如果你要重写这个主题,请务必
“event”应该只用来描述与事件相关的事物,当它与日历相关时会非常令人困惑。
是的。
而且可能还需要调整一些设置描述。![]()
与其现在把它移到另一个类别,不如留在这里,看看我是否能获得更多清晰的信息,然后再为它找到一个永久的归宿。![]()
但感谢你对这个插件如此了解,这确实很有帮助。
![]()
感谢大家的评论 -
我们有来自汉堡菜单的“即将发生的事件”日历,以及类别中的“即将发生的事件”。它们都无法保留事件。
我在哪里可以找到它?
我同意这一点,因为从视觉上看,当“即将发生的事件”日历中有内容时,它看起来比没有内容时更被充分利用。
你可以通过在帖子的 OP(首帖)中添加以下内容来创建一个常规日历:(勾选 calendar enabled 选项)
[calendar]
[/calendar]
然后,所有带有描述和日期的后续帖子都会被添加到该日历中。例如:
这是我的生日!
[date-range from=2022-12-20 to=2020-12-21 timezone="America/Boise"]
你可以从分类 URL 的末尾获取你希望更突出显示该日历的分类 ID,并从 JSON 中获取日历主题的帖子 ID,然后将它们添加到以下设置中:
这些主题中的日历项目帖子受 delete expired event posts after(删除过期的活动帖子后)设置的控制。 ![]()
在 Discourse Calendar and Events 主题中有更详细的信息,如果你需要额外的帮助,也可以随时发起一个新的 Support 主题。 ![]()
实际上,既然我们知道该设置按预期工作,现在是时候将这个主题转移到 Support 板块作为其永久家园了。在我更新了 Calendar&Event 文档后,也许值得创建新的 Contribute > UX 或 Contribute > Feature 主题来涵盖任何遗漏的想法。 ![]()
感谢您的帮助@JammyDodger。我真的很感激。\n\n所以,为了回顾并澄清我最初问题的答案,目前有没有办法在事件发生后将其保留在“即将发生的事件”日历中,除非我删除结束时间?
没关系。很高兴能帮到你。 ![]()
是的,目前在 event-calendar/upcoming-events 中保留活动式项目的唯一方法是删除它们的结束日期。我想知道是否可以创建“过去活动”或“活动历史”日历主题来使用日历项目来实现类似的功能?我不确定这是否适合您,但也许值得探索?
是的,这可能会奏效。我会去研究一下。谢谢!