浏览页面时自定义管道

时间:2014-10-07 10:43:59

标签: sitecore

我想在浏览页面时调用LayoutResolver自定义管道 为此我创建了一个自定义管道并配置如下

<httpRequestBegin>
  <processor patch:after="*[@type='Sitecore.Pipelines.HttpRequest.LayoutResolver, Sitecore.Kernel']" 
             type="Agents.Common.PipeLines.LayoutResolver, Agents.Common" />      
</httpRequestBegin>

但它不是在浏览页面时工作,但是当我点击任何一个甚至来自sitecore时它正在工作。

如何按时浏览页面。

2 个答案:

答案 0 :(得分:1)

根据您提供的修补程序语法,您似乎已将LayoutResolver配置为在现有LayoutResolver之后运行。

您打算替换现有的解析器吗?或者在它之前运行你的逻辑?

要进行替换,您需要使用patch:instead。要在现有解析程序之前运行,您需要使用patch:before

答案 1 :(得分:1)

无论您的处理器配置如何,HTTP请求开始管道都会针对大多数(如果不是全部)Sitecore请求执行 - 即使是shell请求,我认为这是您在问题中提到的。

最简单的方法是验证上下文站点是website(或您想要影响哪个Sitecore站点)以及可能区分您想要的任何其他内容(例如页面模式)。< / p>