如何确定sitecore页面的访问者是否唯一?
我想确定查看sitecore页面的用户首次访问该页面时是否唯一。我试图使用以下代码,但它似乎只基于会话。是否有一种可以跨会话工作的替代方案如何确定sitecore页面的访问者是否唯一?,sitecore,Sitecore,我想确定查看sitecore页面的用户首次访问该页面时是否唯一。我试图使用以下代码,但它似乎只基于会话。是否有一种可以跨会话工作的替代方案 protected bool First_Visit() { var pageId = ActionItem.ID.ToGuid(); var visitCount = Sitecore.Analytics.Tracker.Visitor.DataContext.Pages.Select(pagesRow =
protected bool First_Visit()
{
var pageId = ActionItem.ID.ToGuid();
var visitCount = Sitecore.Analytics.Tracker.Visitor.DataContext.Pages.Select(pagesRow =>
pagesRow.ItemId.Equals(pageId)
).Count();
return visitCount == 1;
}
我想你需要先做Tracker.Visitor.LoadAll。这将加载该特定访问者的所有访问数据
编辑
话虽如此,不言而喻,如果访问者来自一个身份不明的设备,即一个现有的访问者来自一个设备,但他们没有在该设备上表明自己的身份,则该访问者将被视为该用户的第一次访问。这就是我所想到的,似乎在整个会话中都能正常工作:
protected bool First_Visit()
{
var pageId = ActionItem.ID.ToGuid();
var visitor = Sitecore.Analytics.Tracker.Visitor;
var visits = from visit in visitor.DataContext.Visits
from page in visit.GetPages()
where page.ItemId.Equals(pageId)
select page;
return visits.Count() == 1;
}