Ha saját lekérdezésből származó tartalomelrendezésben lévő tartalomelemek listáját jeleníti meg, létrehozhat egy tartalomelem részletező oldalára mutató hivatkozást. A Sites SDK készlet SCSRenderAPI.getPageLinkData API felületét használhatja a Webhely részletei oldal URL-címének előállításához.
A detailPageId tulajdonság a tartalomelemben vagy a tartalomlistán kijelölt részletező oldal azonosítója. Ha az érték nem lett beállítva, a visszaadott érték az olyan SiteStructureMap első oldala, amelynél az isDetailPage tulajdonság be van állítva.
A tulajdonság eléréséhez a Sites SDK készletet használhatja. Ez csak akkor áll rendelkezésre, ha a tartalomelrendezést az Oracle Content Management webhelyénél használják. Ez csak az scsData segítségével érhető el, amely egyik argumentumként van átadva a tartalomelrendezés létrehozásakor. Például:
scsData.SitesSDK.getProperty('detailPageId', function (detailPageId) { console.log(detailPageId);});
Amikor rendelkezésre áll a detailPageId, ezt a részletező oldalra mutató hivatkozás kialakításához használhatja.
Az SCSRenderAPI rendelkezik a getPageLinkData() függvénnyel, amely a pageId és további beállítások alapján felépíti a beállításoknak megfelelő oldalra mutató URL-címet. A függvény szintaxisa a következő:
SCSRenderAPI.getPageLinkData(pageId,
options);
A következő paraméterekkel rendelkezik:
pageId: megegyezik a Sites SDK detailPageId tulajdonsága által visszaadott detailPageId értékkel.
options:
contentType
contentId
contentName
A visszatérési érték egy objektum a következő tulajdonságokkal:
hideInNavigation
href
href
A következő példában mindez együtt látható:
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);
});
Ennek eredménye a következő lehet: „/sites/{site}/{detailPageName}/{contentType}/{contentId}/{contentSlug}”
Ha a pageId nem részletező oldal, akkor a tartalomértékek nem fognak szerepelni az URL-címben.