Wanneer met Sites een nieuwe instance van de constructorfunctie wordt gemaakt, wordt een parameter doorgegeven die contentItemData
, scsData
en contentClient
bevat om te helpen met de ontwikkeling van inhoudlay-out.
Hier volgt voorbeeldcode voor de constructorfunctie:
function ContentLayout(params) { this.contentItemData = params.contentItemData || {}; this.scsData = params.scsData; this.contentClient = params.contentClient; } ContentLayout.prototype = { render: function (parentObj) { var content = { blogTitle: this.contentItemData.data['starter-blog-post_title'], }; if (this.scsData) { content = $.extend(content, { 'scsData': this.scsData }); } } }; return ContentLayout;
De parameter voor de constructorfunctie omvat de volgende objecten:
params.contentItemData: bevat het inhouditem en de bijbehorende naam, beschrijving, ID en gegevens. Bijvoorbeeld: het veld 'blogpost_title
' in het inhouditem is toegankelijk met params.contentItemData.data['blogpost_title']
.
params.scsData:: met dit object worden gegevens doorgegeven wanneer de constructor wordt aangeroepen vanuit sites. Dit object bestaat niet voor inhoudlay-outs die worden weergegeven in applicaties van derden. Dit object bevat een Sites SDK object, de methode contentTriggerFunction
om een trigger te genereren en de paginakoppelingen Details.
params.contentClient: dit is het object contentClient
dat is gemaakt vanuit de Content SDK en wordt gebruikt om de inhoudlay-out aan te roepen. Het is daarom geconfigureerd met de juiste parameters voor de contentserver. Als er aanvullende aanroepen naar de contentserver moeten worden uitgevoerd, kunt u dit object contentClient
gebruiken in plaats van uw eigen object te maken. Dit object bevat client-API's voor de inhoud. API's zijn beschikbaar voor het uitvoeren van zoekvragen, voor zoekopdrachten en voor het ophalen van inhouditems en de bijbehorende inhoudtypen. Andere helper-API's zijn ook beschikbaar, bijvoorbeeld expandMacros()
om de macro's uit te vouwen die in opgemaakte tekst worden gebruikt.