Kentico事件日历在多个地点

  • 本文关键字:事件 日历 Kentico kentico
  • 更新时间 :
  • 英文 :


有人问我,我建立的内部销售网站是否可以支持多个事件日历。他们想要的是每个组的日历和全局。因此全局日历将显示来自每个组的全局和事件。组日历将只显示它们相关的事件。

所以我添加了文件夹到我的事件节点,并添加了一些测试页面。它们显示在全局事件中,因为它的路径是。/%。很好。

对于组(Compliance),它的路径是/events/Compliance/%。这可以工作,并且Compliance日历只显示指定文件夹内的事件。

每个事件节点的url基于全局路径so/event/compliance/event-1.aspx。这将用户带出组部分并打破用户流。我希望特定于组的事件仍然显示其URL结构。所以像这样,/Our-Company/Compliance/Calendar-of-Events/event-1.aspx.

我可以使用特定于组的事件及其节点,但随后我丢失了全局日历上的所有事件。那么,是否有一种方法可以让一个日历从树中的多个位置提取事件呢?

您有两个选择:

    使用链接页面。这将允许你拥有一个全局位置,并在不同的位置拥有一个"副本"(实际上是为了导航目的)。好的方面是,如果更新其中一个链接页面,它会更新所有链接页面,所以不用担心过时的内容。
  1. 对事件进行分类。这个需要更多的努力,但效果一样。
  2. 设置WHERE语句对NodeAliasPath进行过滤。你可以这样做

Path =/%
Where = "NodeAliasPath LIKE '/GlobalEvents/%'或NodeAliasPath LIKE '/Groups/Compliance/Events/%'"

3可能是你最好的选择,如果你想让它更动态,你可以在where条件中使用宏。

我同意Brenden的观点,尤其是#2。#2将为您提供最大的灵活性和对多个区域查询全局项目的控制,但也为您提供了单个管理位置。我们在几乎所有的项目中都使用这种方法,它既易于管理,又易于教会您的内容贡献者如何最好地使用它。

我要给出的唯一其他建议是还包括一些标志字段,您可以在日历列表视图中优先考虑这些项目。我们经常有这样的要求:不仅要按日期顺序显示,而且要在排序中优先考虑某些日历事件。在你可能不会预先使用它的情况下,在未来使用它是一种很好的前瞻性思维。

最新更新