2011-12-05 64 views
0

我想知道是否可以使用kentico宏(不一定編寫自定義的宏)來訪問重寫URL的部分路徑。我可以使用Kentico宏來獲取部分路徑嗎?

例子:http://www.mysite.com/Category/Subcategory/

我想獲得最後一部分(類別),這樣我可以再動態地過濾內容。我想使用這個宏的原因是,不需要有20多個不同的頁面模板,所以我可以擁有不同的Web部件屬性。

+0

是的,有將解決像「〜/ {0}/{1} /%路徑宏「等,但它有限制。你究竟想用它做什麼? –

+0

基本上我想通過「子類別」(理想情況下還用空格代替所有破折號),並把它傳遞給一個列表瀏覽Web部件的類別字段,這樣我可以得到所有的相關內容 - 我要補充一點內容我想列出的是完全從網站的另一節。然而,我想要使用「子類別」進行過濾。 –

+0

水平在不同的深度?例如,有時/ 1/2,有時是1/2/3?如果是這樣,宏觀解決方案可能不是解決方案。爲什麼不使用默認的文檔路徑,然後使用變換和選定的項目變換? –

回答

0

假設你使用的是門戶網站模板,你不想要一個父列表「所有的一切子類別項目」:

  1. 創建父頁面上的文章列表Web部件 - 父母所有子類別。
  2. 設置Web部件Path/{0}/{1}/{2}/%(如果你的路徑是/家庭/父母/例如子目錄),或爲您的環境類似的東西。
  3. 使用的Inherit默認設置爲所有子類別頁面的頁面模板。

這不會顯示父頁面上的任何內容,並且子類別將僅顯示其自身的文檔。注意:如果你想在子類項目時,用戶挖掘到/{0}/{1}/{2}/item有自己的看法,你可能需要通過改變模板繼承,或在Web部件的文件類型,或類似的東西過濾,如果你不希望整個子類別列表也顯示在特定項目頁面上。

+0

謝謝,我明白你的建議。這可以解決我上週解決的另一個問題。我需要通過實際的Kentico類別來過濾內容(基本上就像標籤一樣)。我可能在我的第一篇文章中沒有表達得那麼清楚,我很抱歉。 –

+0

@Codehelpneeded:所以你說'Category/Subcategory'不是Page文檔類型,它們是你正在使用的正式Kentico類別,它是URL映射來顯示網站上所有設置爲使用這些形式的文檔Kentico類別? –

+0

類別/子類別是頁面文檔類型。 我想要做的是從URL中檢索子類別並將其用作搜索字符串(它與Kentico Cateogry的名稱匹配) –

0

您可以創建自定義宏,或者您也可以使用它是允許宏內的字符串操作。請參閱http://devnet.kentico.com/docs/6_0/devguide/available_macro_methods.htm#string_methods(您可以使用EndsWith或TrimStrart或類似的東西)。

不過,我認爲最好的方法是創建一個自定義宏這將正好契合。可能有一些宏和宏函數的組合 - 但我認爲編寫一個能夠100%滿足您的需求的自定義代碼會更快。

此外,還可以採取對K#看看,如果有東西,將適合 - http://devnet.kentico.com/docs/6_0/devguide/ksharp_syntax.htm

相關問題