2011-08-12 34 views
2

.NETのアイテムのエイリアスURLを取得することは可能ですか? Sitecore.Links.LinkProviderクラスを使用して項目のデフォルトURLを取得できましたが、別名URLを取得する方法が見つかりませんでした。Sitecore:アイテムのエイリアスURLを取得する方法

+1

私は先日同様の質問に答えました:http://stackoverflow.com/questions/6919116/how-to-check-whether- sitecore-item-is-using-alias/6922452#6922452。上記のAPIに必要な情報を取得する方法が含まれているかどうかを確認する –

答えて

1

string query = String.Format("/*/system/Aliases//*[@@templateid='{0}' and contains(@Linked item, '{1}')]", Sitecore.TemplateIDs.Alias, Sitecore.Context.Item.ID); 
Sitecore.Data.Items.Item alias = Sitecore.Context.Database.SelectSingleItem(query); 
string aliasUrl = string.Empty; 
if (alias != null) { 
    aliasUrl = String.Format("/{0}.aspx", alias.Name); 
} 

(私はこれをテストしていませんが、それはいくつかに基づいています...私はそれを行いどこでもサイトコアのAPIに組み込まれた方法はないと思うが、あなたはこのような何かを試みることができますコード私はすでに+私の頭の上からいくつかの他のものを使用しています。)

関連する問題