Kendi sorgunuzdaki bir içerik yerleşiminde bulunan bir dizi içerik öğesini görüntülüyorsanız bir içerik öğesi için detay sayfası bağlantısı oluşturabilirsiniz. Siteler Yazılım Geliştirme Kiti SCSRenderAPI.getPageLinkData
Uygulama Programı Arabirimini kullanarak Site Detayları sayfa URL'si oluşturabilirsiniz.
detailPageId
niteliği, içerik öğesinde veya içerik listesinde seçili detay sayfasının No'sudur. Değer ayarlanmadıysa döndürülen değer isDetailPage
nitelik kümesini içeren SiteStructureMap
içindeki ilk sayfadır.
Bu niteliğe erişmek için Siteler Yazılım Geliştirme Kitini kullanabilirsiniz. Bu sadece içerik yerleşimi bir Oracle Content Management sitesi için kullanıldığında kullanılabilir. Sadece içerik yerleşimi oluşturulurken bağımsız değişkenlerden biri olarak iletilen scsData üzerinden erişilebilir. Örneğin:
scsData.SitesSDK.getProperty('detailPageId', function (detailPageId) { console.log(detailPageId);});
detailPageId
niteliğine sahip olduğunuzda bunu kullanarak detay sayfasının bağlantısını yapılandırabilirsiniz.
SCSRenderAPI, bir pageId
niteliği ile ek seçenekleri alan ve seçenekleri ileterek gerekli sayfa URL'sini yapılandıran getPageLinkData()
adlı bir fonksiyon içerir. Bu fonksiyonun imzası şöyledir:
SCSRenderAPI.getPageLinkData(pageId, options);
Şu parametreleri içerir:
pageId: Siteler Yazılım Geliştirme Kiti detailPageId
niteliğinden döndürülen detailPageId
ile aynıdır.
options:
contentType
contentId
contentName
Döndürülen değer şu niteliklere sahip bir nesnedir:
hideInNavigation
href
href
Sonraki örnekte bunların hepsi toparlanır:
scsData.SitesSDK.getProperty('detailPageId', function (detailPageId) { var pageDetails = SCSRenderAPI.getPageLinkData(pageId, { 'contentType': contentType, 'contentId': contentId, 'contentName': contentItemData.slug || contentItemData.name }); // get the URL to the page console.log(pageDetails.href); });
Bunun çıktısı şu şekildedir: "/sites/{site}/{detailPageName}/{contentType}/{contentId}/{contentSlug}
"
pageId
bir detay sayfası değilse içerik değerleri URL'ye eklenmez.