Вариация и таксономия навигации получают дружественный URL
-
10-12-2019 - |
Вопрос
Я использую управляемую навигацию (таксономию навигацию) функцию SharePoint Server 2013. Я настроил вариацию для 2 языков (ru и fr).
Использование кода ниже, мне удалось получить относительный URL-адрес STEER SAIT:
string url = Variations.GetPeerUrl(SPContext.Current.Web, currentUrl, label.Title);
.
Например, когда я в http://www.sampple.com/en/demo, используя код выше я получаю /fr/pages/demo.aspx
Что я хочу, это управляемый навигационный срок или дружеский URL для него, который является чем-то вроде http:// www.sample.com / fr / Demo
Как можно добиться этого, каковы правильные API, которые я должен использовать здесь.
Спасибо
Решение
агаманд,
Сначала с полного URL-адреса вы должны получить элемент списка, используя spweb.getlistitem
См. Пример здесь:
Получить сплистему ссылку от URL
, чем вы можете использовать следующий фрагмент, чтобы получить условия для страницы:
//retrieve the terms used for the navigation (this can be multiple terms)
IList<NavigationTerm> terms = TaxonomyNavigation.GetFriendlyUrlsForListItem(item, false);
string url = string.Empty;
//check if the pages has terms associated with it
if (terms.Count > 0) {
//use the GetResolvedDisplayUrl to retrieve the page friendly urls
url = terms[0].GetResolvedDisplayUrl(string.Empty);
//Or you can use GetWebRelativeFriendlyUrl
} else {
//if the page does not have any terms get the normal url
url = item.File.Url;
}
.
Я надеюсь, что это поможет