【发布时间】:2012-03-20 09:33:57
【问题描述】:
我们需要确定是谁触发了 Tridion 2009 页面的发布:编辑器或代码。
请举个例子: 出版物 A 从 A 继承的发布 B
现在,当我们使用“也在子出版物中发布/取消发布”在出版物 A 中发布页面时,将为 出版物 A 以及出版物 B 中的页面。
在这种情况下,我们只想在发布 A 的页面上使用事件系统
类似:
public override void OnPageSetPublishedToPost(Page page, string publicationTarget, bool published, string user)
{
if (!page.IsTriggeredByParent)
{
// do stuff
}
}
问题是我们不知道如何确定“IsTriggeredByParent”的值。
感谢您的宝贵时间
【问题讨论】:
-
能否指定您正在使用的 Tridion 版本,以及您尝试使用的事件处理程序/触发器。
-
我们使用的是 Tridion 2009。事件是:
public override void OnPageSetPublishedToPost(Page page, string publicationTarget, bool published, string user)在页面发布后调用。在内部,我们需要确定发布行为是否由父发布触发。 -
如果没有大量挖掘,我不相信您尝试做的事情只能使用 OnPageSetPublishedToPost 触发器。有什么方法可以使用 OnPageResolvePre 事件?也许您可以在代码中解释您实际尝试实现的目标,以便我们提出另一种创造性的解决方案。
-
我认为要解决这个问题,您将不得不告诉我们更多有关它的信息。您已经确定了使用 OnPageSetPublishedToPost 的技术,但只是给出了有关问题域的隐蔽提示。那么为什么要区别对待这两种情况,“做事”是什么意思。也许通过更广阔的视野,我们可以提供更好的帮助。
标签: events system publishing tridion