사이트에서 생성자 함수의 새 인스턴스를 생성할 때 콘텐츠 레이아웃 개발을 돕기 위해 contentItemData
, scsData
및 contentClient
가 포함된 매개변수를 전달합니다.
다음은 생성자 함수의 예제 코드입니다.
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;
생성자 함수 매개변수에는 다음 객체가 포함됩니다.
params.contentItemData: 이름, 설명, ID 및 데이터를 비롯한 콘텐츠 항목을 포함합니다. 예를 들어, 콘텐츠 항목의 'blogpost_title
' 필드는 params.contentItemData.data['blogpost_title']
을 사용하여 액세스할 수 있습니다.
params.scsData: 이 객체는 생성자가 사이트 내에서 호출될 때 정보를 전달합니다. 이 객체는 타사 애플리케이션에서 렌더링된 콘텐츠 레이아웃에는 존재하지 않습니다. 이 객체에는 Sites SDK 객체, 트리거를 발생시키는 contentTriggerFunction
메소드 및 세부정보 페이지 링크가 포함됩니다.
params.contentClient: Content SDK에서 생성된 contentClient
객체로, 콘텐츠 레이아웃을 호출하는 데 사용됩니다. 따라서 콘텐츠 서버에 적합한 매개변수로 구성됩니다. 콘텐츠 서버에 추가 호출을 실행해야 하는 경우 직접 생성하는 대신 이 contentClient
객체를 사용할 수 있습니다. 이 객체에는 콘텐츠의 클라이언트 API가 포함됩니다. API에서 콘텐츠 항목과 해당 콘텐츠 유형을 질의, 검색하고 가져올 수 있습니다. 다른 헬퍼 API도 사용할 수 있습니다. 예를 들어, expandMacros()
는 서식 있는 텍스트에 사용된 매크로를 확장합니다.