2012-03-14 52 views
2

我爲一個也重新命名的項目創建了一個別名(基本上是Sitecore中的一個虛擬(或替代)路徑)。然後,我的自定義重定向處理程序正確地確定舊鏈接的項目ID。Sitecore GetItemUrl()解析爲別名

但是,當我呼叫LinkManager.GetItemUrl(item, urlOptions)時,生成的URL用於別名,而不是內容樹中存在的實際Sitecore項目。

這是Sitecore的默認行爲LinkManager.GetItemURL()解析爲一個項目的別名,如果存在?

回答

2

這是possibly related questionsolution

  1. 您能確保您沒有使用自定義LinkProvidercustom LinkProvider on the shared source?如果您正在使用它,則其部分行爲是爲項目鏈接應用別名。

  2. 另一件事是看看你的HTML輸出緩存,並確保這不是問題(如上面的鏈接引用其他問題)。

此外,您正在使用什麼版本的Sitecore?

+0

這就是令人費解的。我沒有使用自定義的LinkProvider。我使用的是Sitecore API附帶的一個。當我瀏覽代碼時,我可以看到它將Sitecore項傳遞給GetItemUrl(item,urlOptions)方法並返回別名的URL。我運行的版本是Sitecore 6.4.1 – sean 2012-03-14 19:29:05

+0

更正 - 它使用「共享源」鏈接提供程序。 – sean 2012-03-14 19:57:26

+0

這似乎很奇怪。爲什麼這是「共享源碼」版本的行爲? – sean 2012-03-14 20:07:15

相關問題