Sitecore Intranet Portal如何知道用户是否已访问/(已查看)项目

时间:2015-11-29 19:42:59

标签: c# sitecore portal sitecore7.2 sitecore-intranet-portal

我有一个名为新闻栏目的页面项目。在此页面中,用户可以看到所有新闻的列表,新闻标题以粗体显示。

现在我想要做的是让那些阅读过新闻的用户正常(非粗体)标题。

为此,我想在sitecore中创建一个包含每个新闻项目的文件夹,并在该文件夹中为每个用户创建一个带有checkBox字段的项目"被读取"在里面。

但我不确定如何跟踪用户是否查看/访问过某个项目。 我应该使用cookies吗?或者Sitecore中提供了一些开箱即用的功能,以检查用户是否访问过某个项目。 ?

1 个答案:

答案 0 :(得分:0)

这种做法对我来说似乎是错误的。我认为你应该关注这个人浏览过的网页"而不是"看过这个网页的人#34;。

由于您使用Sitecore 7.2(因此无法使用xDB),您可以存储他们查看过的新闻项目的ID。在我看来,更新配置文件的最佳位置是HttpRequestBegin管道处理器。

当用户登陆页面时,您只需检查其个人资料,以查看当前页面的GUID是否在其列表中。

您需要创建自定义用户个人资料,这非常简单。请参阅Security API cookbook的第3.5节:https://sdn.sitecore.net/upload/sitecore6/sc61keywords/security_api_cookbook_a4.pdf

我认为这种方法比较简洁,因为您不必为每个查看页面的人创建文件夹和特殊项目。

顺便说一下,我假设您的系统将拥有可管理的用户数量和新闻页面。我怀疑这种情况会很好。