在Sitecore的我已經拒絕訪問特定頁面爲匿名用戶。Sitecore的 - 禁止訪問一個頁面,但仍顯示出它在導航
這正常工作,但它也意味着頁面不會出現在導航菜單和地圖(包括XSLT)。
我想什麼是用戶是能夠看到的鏈接,但是當他們點擊它被重定向到一個註冊/登錄頁面。
在Sitecore的我已經拒絕訪問特定頁面爲匿名用戶。Sitecore的 - 禁止訪問一個頁面,但仍顯示出它在導航
這正常工作,但它也意味着頁面不會出現在導航菜單和地圖(包括XSLT)。
我想什麼是用戶是能夠看到的鏈接,但是當他們點擊它被重定向到一個註冊/登錄頁面。
你需要允許匿名用戶查看的頁面爲它在菜單和網站地圖可見。
什麼,你可以做,雖然是覆蓋Sitecore.Pipelines.HttpRequest.HttpRequestProcessor檢查,如果頁面需要登錄(通過添加RequiresLogin真/假的模板爲例),然後檢查用戶是否如果不是重定向到登錄頁面,則登錄。
即使世界重寫HttpRequestProcessor here
你可以換,呈現邏輯在一個SecurityDisabler菜單,所以它將使所有的條目鏈接的例子,即使用戶「無法看到」他們。
using (SecurityDisabler disabler = new SecurityDisabler())
{
foreach (Item item in Sitecore.Context.Item.Children)
{
... render the link ...
}
}
這不會爲所提供的代碼工作是一個ASCX不是XSLT。但是,您可以使用
這工作得很好,並提供了一個更簡單的方法來限制用戶訪問頁面的用戶誰可能會發現用戶管理器有點恐嚇。謝謝。 – 2013-03-30 09:36:35