2014-12-19 27 views
0

我们希望根据他们所做的所有访问将访问者与模式卡相匹配,而不仅仅是当前访问。细分生成规则“匹配模式”是:是否可以使用Segment Builder规则“Matches Pattern”作为页面编辑器个性化选项?

where the visitor matches the [PatternName,Pattern,selectprofilefirst=1&resulttype=Name,specific] pattern card in the [ProfileName,Profile,resulttype=Name,specific] profile 

这是

Sitecore.Analytics.Rules.SegmentBuilder.Conditions.HasPatternCondition,Sitecore.SegmentBuilder 

是否有可能将其添加到现有的个性化规则的网页编辑器可以选择一个组件,并有它在运行时进行评估?

Sitecore.NET 7.2(修订版140526)

+0

您正在使用哪个特定版本的Sitecore 7.x? – 2014-12-19 11:55:54

+0

@MartinDavies编辑的问题:Sitecore.NET 7.2(修订版140526) – 2014-12-19 12:47:18

回答

1

细分生成规则的设计,以配合根据您的标准现有游客大集合。如果您检查任何分段生成器条件的代码,则会看到它们构建了最终针对Visitors表执行的子句。

你对OOTB有条件呈现规则只适用于当前访问的模式卡片是正确的。值得庆幸的是,它很容易在所有访问扩展规则,包括配置文件:

using Sitecore.Analytics; 
using Sitecore.Analytics.Data.DataAccess; 
using Sitecore.Analytics.Rules.Conditions; 
using Sitecore.Rules; 

namespace MyProject.Web.Analytics.Rules.Conditions.Patterns 
{ 
    public class VisitorHasPatternCondition<T> : HasPatternCondition<T> where T : RuleContext 
    { 
     protected override bool Execute(T ruleContext) 
     { 
      // Load all profiles into current dataset 
      Tracker.Visitor.LoadAll(VisitLoadOptions.Profiles, VisitorOptions.None); 

      return base.Execute(ruleContext); 
     } 
    } 
} 

LoadAll()方法将所有的访问者的配置文件加载到当前的DataSet。然后我们调用基地Execute()方法,该方法检查DataSet是否匹配模式卡片。

相关问题