在多站点解决方案中隐藏某些网站中的Sitecore页面

时间:2016-10-18 13:29:32

标签: sitecore sitecore8

我们在同一个Sitecore实例中运行多个网站。所有站点都有相同的起始项和项目树,因为每个站点上的内容大多相同。

有些网页应该出现在某些网站上,而不会出现在其他网站上。我希望能够配置一个项目,使其仅存在于站点A中,如果用户尝试在站点B上访问它,则会收到404错误。 Sitecore是否有内置的方法来实现这一目标?

我当前的想法包括在页面模板中添加一个属性“Sites to appear on”,然后添加一个自定义管道处理器,为当前页面检查此值,然后返回页面或404错误。

1 个答案:

答案 0 :(得分:0)

  

我目前的想法是添加一个属性'网站出现在'到页面模板,然后添加一个自定义管道处理器,它检查当前页面的这个值,然后返回页面或404错误。

这实际上是您可以提供的最佳方法! 只需将多列表字段添加到项目模板以选择允许的站点,将自定义属性添加到站点配置中的站点定义(例如siteId = {id})。

之后,您可以轻松地比较网站解析器中的这些值。

请注意,您还应覆盖链接管理器以确保正确生成链接