Hvis du udvikler din egen tilpassede komponent, kan du udvikle sammensatte elementer, der kan integreres på sitesiden, ved hjælp af en hvilken som helst sideteknologi. På den måde kan du effektivt udvide listen over komponenter, der er angivet i Oracle Content Management.
Poster for alle registrerede komponenter gemmes i komponentkataloget, som er en mappe i Oracle Content Management, der indeholder posterne for alle registrerede komponenter.
Brug ikke følgende navne til skabeloner, temaer, komponenter, sites eller sitesider: authsite, content, pages, scstemplate_*, _comps, _components, _compsdelivery, _idcservice , _sitescloud, _sitesclouddelivery, _themes, _themesdelivery. Du kan ganske vist bruge følgende navne til sitesider, men ikke til skabeloner, temaer, komponenter eller sites: documents, sites.
Komponenttyper
Komponentkataloget understøtter disse typer af komponenter:
Lokal komponent
Lokal komponent, der er gengivet i en inline-ramme
Ekstern komponent
Komponenttypen gemmes som en udvidelsesattribut, "xScsAppType"
, for komponentmappen. Gyldige værdier følger.
Type | Beskrivelse |
---|---|
Lokal komponent |
Alle afhængigheder forventes at være lokale. |
Lokal komponent, der er gengivet i en inline-ramme |
Komponenten betjenes fra samme domæne som Oracle Content Management. |
Ekstern komponent |
Komponenten betjenes fra en ekstern lokation. |
Komponentfilstruktur
De enkelte komponenttyper har et særskilt sæt filer, når de oprettes i komponentkataloget, som er baseret på, hvordan de implementeres.
Lokal komponent:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
Lokal komponent, der bruger inline-ramme:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
js
sites.min.js
knockout.min.js
jquery.min.js
Ekstern komponent:
/Components/component-name
appinfo.json
_folder_icon.jpg
keys.json
Mappemetadata
Komponentregistreringens data gemmes i mappemetadataene. Følgende egenskaber bruges til entydigt at identificere komponenten og dens type.
Egenskab | Beskrivelse |
---|---|
app name |
Navnet på den mappe, der angiver navnet på komponenten. |
app description |
Beskrivelse af mappen. |
app guid |
Hver komponent er tilknyttet et GUID og gemmes som en udvidelsesattribut, |
app type |
Egenskab, der angiver komponenttypen. Den gemmes som en udvidelsesattribut, |
Bemærk:
EgenskabeniconUrl
, der gemmes som en udvidelsesattribut, xScsAppIconUrl
, frarådes.Filen appinfo.json
Registreringsfilen appinfo.json
indeholder kun data, der ikke er tilgængelige i mappemetadataene, for hver komponenttype. Komponentegenskaber, der er defineret i mappemetadataene, dubleres ikke i filen appinfo.json
.
Lokal komponent:
{ "settingsData":{ "settingsHeight":80, "settingsRenderOption"; "dialog", "settingsWidth":300, "componentLayouts":[], "triggers":[], "actions":[] }, "initialData":{ "customSettingsData":[], } }
Lokal komponent, der er gengivet i en inline-ramme:
{ "endpoints": { "settings": { "height": "300", "width": "400" } } "initialData": { "customSettingsData": {} } }
Ekstern komponent:
{ "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": {} } }
Der er ingen registrerede "url"
-værdier for lokale komponenter. De bruger bestemte filer, hvis indhold kan redigeres, men du kan ikke ændre lokationen eller navnet.
Lokale komponenter bruger filerne assets/render.js
og assets/settings.html
.
Lokale komponenter, der gengives i en inline-ramme, bruger filerne assets/render.html
og assets/settings.html
.
Eksterne komponenter bruger de "url"
-værdier, der er angivet.