การพัฒนาองค์ประกอบที่คุณกำหนดเองช่วยให้คุณสามารถพัฒนาอีลิเมนต์แบบผสมที่สามารถรวมอยู่ในเพจของไซต์ โดยใช้เทคโนโลยีของเพจใดก็ได้ที่ต้องการ การทำงานนี้ช่วยให้คุณสามารถขยายลิสต์ขององค์ประกอบที่มีให้ใน Oracle Content Management ได้อย่างมีประสิทธิภาพ
รายการขององค์ประกอบที่รีจิสเตอร์ทั้งหมดจะเก็บอยู่ในแคตตาล็อกองค์ประกอบ ซึ่งเป็นโฟลเดอร์ใน Oracle Content Management ที่ประกอบด้วยรายการสำหรับองค์ประกอบที่รีจิสเตอร์ทั้งหมด
ห้ามใช้ชื่อต่อไปนี้สำหรับเทมเพลท ธีม องค์ประกอบ ไซต์ หรือเพจของไซต์: authsite, content, pages, scstemplate_*, _comps, _components, _compsdelivery, _idcservice , _sitescloud, _sitesclouddelivery, _themes, _themesdelivery แม้ว่าคุณสามารถใช้ชื่อต่อไปนี้สำหรับเพจของไซต์ แต่ห้ามใช้สำหรับเทมเพลท ธีม องค์ประกอบ หรือไซต์: documents, sites
ประเภทองค์ประกอบ
แคตตาล็อกองค์ประกอบรองรับองค์ประกอบประเภทเหล่านี้
องค์ประกอบในระบบ
องค์ประกอบในระบบที่แสดงผลในเฟรมแบบอินไลน์
องค์ประกอบระยะไกล
ประเภทขององค์ประกอบจะเก็บเป็นแอททริบิวส่วนขยาย "xScsAppType" ของโฟลเดอร์องค์ประกอบ ค่าที่ใช้ได้มีดังนี้
| ประเภท | คำอธิบาย |
|---|---|
|
องค์ประกอบในระบบ |
รายการที่อ้างอิงทั้งหมดเป็นที่คาดหมายว่าจะต้องอยู่ในระบบ |
|
องค์ประกอบในระบบที่แสดงผลในเฟรมแบบอินไลน์ |
องค์ประกอบจะมาจากโดเมนเดียวกับ Oracle Content Management |
|
องค์ประกอบระยะไกล |
องค์ประกอบจะมาจากที่ตั้งระยะไกล |
โครงสร้างไฟล์ขององค์ประกอบ
องค์ประกอบแต่ละประเภทจะมีชุดของไฟล์ต่างกันเมื่อสร้างในแคตตาล็อกองค์ประกอบ โดยขึ้นกับวิธีการใช้งานองค์ประกอบเหล่านั้น
องค์ประกอบในระบบ:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
องค์ประกอบในระบบที่ใช้เฟรมแบบอินไลน์:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
js
sites.min.js
knockout.min.js
jquery.min.js
องค์ประกอบระยะไกล:
/Components/component-name
appinfo.json
_folder_icon.jpg
keys.jsonเมตะดาต้าของโฟลเดอร์
ข้อมูลการรีจิสเตอร์องค์ประกอบจะเก็บอยู่ในเมตะดาต้าของโฟลเดอร์ คุณสมบัติต่อไปนี้ใช้เพื่อระบุองค์ประกอบและประเภทขององค์ประกอบโดยไม่ซ้ำกัน
| คุณสมบัติ | คำอธิบาย |
|---|---|
|
ชื่อแอปพลิเคชัน |
ชื่อโฟลเดอร์ซึ่งเป็นตัวกำหนดชื่อขององค์ประกอบ |
|
คำอธิบายแอป |
คำอธิบายโฟลเดอร์ |
|
GUID ของแอป |
ทุกองค์ประกอบจะเชื่อมโยงกับ GUID และเก็บข้อมูลเป็นแอททริบิวส่วนขยาย |
|
ประเภทแอป |
คุณสมบัติจะเป็นตัวกำหนดประเภทขององค์ประกอบ โดยเก็บข้อมูลเป็นแอททริบิวส่วนขยาย |
หมายเหตุ:
คุณสมบัติiconUrl ซึ่งเก็บข้อมูลเป็นแอททริบิวส่วนขยาย xScsAppIconUrl ได้เลิกใช้งานแล้วไฟล์ appinfo.json
ไฟล์การรีจิสเตอร์ appinfo.json สำหรับแต่ละประเภทขององค์ประกอบมีเฉพาะข้อมูลที่ไม่มีอยู่ในเมตะดาต้าของโฟลเดอร์ คุณสมบัติขององค์ประกอบที่กำหนดในเมตะดาต้าของโฟลเดอร์ไม่ได้มีการสร้างสำเนาไว้ในไฟล์ appinfo.json
องค์ประกอบในระบบ:
{
"settingsData":{
"settingsHeight":80,
"settingsRenderOption"; "dialog",
"settingsWidth":300,
"componentLayouts":[],
"triggers":[],
"actions":[]
},
"initialData":{
"customSettingsData":[],
}
}
องค์ประกอบในระบบที่แสดงผลในเฟรมแบบอินไลน์:
{
"endpoints": {
"settings": {
"height": "300",
"width": "400"
}
}
"initialData": {
"customSettingsData": {}
}
}
องค์ประกอบระยะไกล:
{
"endpoints": {
"widget": {
"url": "http://www.externaldomain.com/app/render.html"
}
"settings": {
"url": "http://www.externaldomain.com/app/settings.html",
"height": "300",
"width": "400"
}
}
"initialData": {
"customSettingsData": {}
}
}
ไม่มีค่า "url" ที่รีจิสเตอร์สำหรับองค์ประกอบในระบบ องค์ประกอบในระบบจะใช้ไฟล์บางอย่างที่สามารถแก้ไขได้สำหรับเนื้อหา แต่คุณไม่สามารถแก้ไขที่ตั้งหรือชื่อได้
องค์ประกอบในระบบจะใช้ไฟล์ assets/render.js และ assets/settings.html
องค์ประกอบในระบบที่แสดงผลในเฟรมแบบอินไลน์จะใช้ไฟล์ assets/render.html และ assets/settings.html
องค์ประกอบระยะไกลจะใช้ค่า "url" ใดก็ได้ที่ระบุไว้