Wenn Sites eine neue Instanz der Konstruktorfunktion erstellen, übergeben sie einen Parameter mit contentItemData, scsData und contentClient, um die Entwicklung des Inhaltslayouts zu unterstützen.
Beispielcode für die Konstruktorfunktion:
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;
Der Konstruktorfunktionsparameter umfasst die folgenden Objekte:
params.contentItemData: Enthält das Inhaltselement, einschließlich Name, Beschreibung, ID und Daten. Beispiel: Das Feld "blogpost_title" im Inhaltselement kann über params.contentItemData.data['blogpost_title'] aufgerufen werden.
params.scsData:: Dieses Objekt übergibt Informationen, wenn der Konstruktor aus Sites aufgerufen wird. Für Inhaltslayouts, die in Drittanbieteranwendungen gerendert werden, ist dieses Objekt nicht vorhanden. Dieses Objekt enthält ein Sites-SDK-Objekt, die Methode contentTriggerFunction zum Auslösen eines Triggers und die Seitenlinks für Details.
params.contentClient: Mit diesem aus dem Content-SDK erstellten contentClient-Objekt wird das Inhaltslayout aufgerufen. Es wird daher mit den jeweiligen Parametern für den Content Server konfiguriert. Wenn Sie weitere Aufrufe des Content Servers durchführen müssen, können Sie dieses contentClient-Objekt verwenden, anstatt Ihr eigenes zu erstellen. Dieses Objekt enthält Client-APIs für den Inhalt. APIs sind verfügbar, um Inhaltselemente und deren Inhaltstypen abzufragen, zu suchen und abzurufen. Andere Helper-APIs sind ebenfalls verfügbar, z.B. expandMacros() zum Erweitern der in Rich Text verwendeten Makros.