เมื่อไซต์สร้างอินสแตนซ์ใหม่ของฟังก์ชันตัวสร้าง ไซต์จะส่งพารามิเตอร์ที่มี 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:: ออบเจกต์นี้จะส่งข้อมูลเมื่อมีการเรียกตัวสร้างจากภายในไซต์ ออบเจกต์นี้ไม่มีอยู่สำหรับเลย์เอาต์ของเนื้อหาที่แสดงในแอปพลิเคชันของผู้ผลิตรายอื่น ออบเจกต์นี้ประกอบด้วยออบเจกต์ SDK ของไซต์, เมทธอด contentTriggerFunction
สำหรับเรียกทริกเกอร์ และลิงค์ของเพจ Details
params.contentClient: นี่คือออบเจกต์ contentClient
ที่สร้างจาก SDK เนื้อหาและใช้เพื่อเรียกเลย์เอาต์ของเนื้อหา ดังนั้นจึงมีการคอนฟิเกอร์ด้วยพารามิเตอร์ที่เหมาะสมสำหรับเซิร์ฟเวอร์เนื้อหา ถ้าคุณต้องการให้มีการเรียกไปยังเซิร์ฟเวอร์เนื้อหาเพิ่มเติม คุณสามารถใช้ออบเจกต์ contentClient
นี้ โดยไม่ต้องสร้างขึ้นเอง ออบเจกต์นี้ประกอบด้วย API ไคลเอนต์สำหรับเนื้อหา มี API ที่คุณสามารถใช้ในการสืบค้น ค้นหา และเรียกรายการเนื้อหา ตลอดจนประเภทเนื้อหา นอกจากนี้ยังมี API ช่วยเหลืออื่นๆ เช่น expandMacros()
สำหรับขยายมาโครที่ใช้ในข้อความที่มีรูปแบบ