触发与Sitecore中的项目关联的配置文件

时间:2012-05-18 08:53:32

标签: sitecore sitecore-dms

我有一个关于触发与项目关联的配置文件的问题。如果访问者访问某个页面,则会为该访问者触发与该页面关联的配置文件。

如何在代码中触发与项目关联的配置文件?该项目不是页面。如果访问者匹配某种类型的conidtion,我只想触发配置文件。

谢谢!

1 个答案:

答案 0 :(得分:2)

这一切都是通过startTracking管道完成的。不幸的是,看起来Sitecore已经“硬编码”管道以使用Context Item。您应该可以通过替换ProcessItem处理器来实现此目的。

注意:以下内容未经测试。

  1. 创建Sitecore.Analytics.Pipelines.StartTracking.StartTrackingArgs的子类,其Item属性
  2. 创建Sitecore.Analytics.Pipelines.StartTracking.ProcessItem的子类。使用reactor或ILSpy来提取Process方法的现有逻辑。如果传入的StartTrackingArgs属于您的子类,并且指定了Item属性,请使用它而不是上下文项。
  3. 使用Include config with a patch:attribute替换ProcessItem管道中现有startTracking的类型。
  4. 要触发通话,请构建StartTrackingArgs的实例并致电Sitecore.Analytics.Pipelines.StartTracking.StartTrackingPipeline.Run(yourArgs)