当入口页面是别名时,我应该如何开始 Sitecore 活动?

How should I start a Sitecore campaign when the entrance page is an alias?

我们有一个网站广泛使用特定于产品的联系表单(营销人员网络表单模块),因此几乎任何页面都可以被视为登录页面。我们希望 运行 活动利用现有 pages/forms 而不是创建特定于活动的新页面。 由于我们想离线启动这些活动,因此我们将使用别名为印刷活动提供短 URL material。 我们如何在别名下查看现有页面时触发活动,而不是在从其他来源(例如自然搜索、内部网站 link、其他活动)访问时不触发活动?

您可以使用 AliasResolver 管道处理器做一些自定义的事情。

在此处理器中,如果访问了某个别名,您可以触发某些活动。

设置别名解析器的方法如下:

http://sitecoreblog.patelyogesh.in/2013/08/sitecore-item-alias-alternate-url.html

触发活动的代码也在这里:

http://www.alen.me.uk/2014/05/trigger-sitecore-dms-campaign-via-ajax.html

一个更优雅的解决方案是将规则引擎合并到确定哪个别名触发哪个活动的逻辑中。您可以按照以下步骤执行此操作:

  1. 通过继承新模板为 Sitecore 中的别名项添加新的规则字段
  2. 将自定义 AliasResolver 中的代码添加到 运行 AliasResolver 解析的 Alias 规则 - 这里有一些使用 Outcomes 的示例代码,但您可以将其切换为 Alias 项目。 - https://github.com/ianjohngraham/CoreBlimey.Utils/blob/master/CoreBlimey.OutcomeRules/Pipelines/RunOutcomeRules.cs

  3. 为每个别名添加规则操作,例如触发活动 x。规则引擎中应该已经有触发活动的操作,如果没有,您可以轻松编写一个。

通过此设置,当别名被解析时,可以触发正确的活动,并且所有活动都可以在 Sitecore 中配置。