El desarrollo de sus propios componentes personalizados le permite desarrollar elementos compuestos que se pueden embeber en la página del sitio mediante cualquier tipo de tecnología de página que elija. Esto le permite ampliar de forma eficaz la lista de componentes que se proporcionan con Oracle Content Management.
Las entradas de todos los componentes registrados se almacenan en el catálogo de componentes, una carpeta de Oracle Content Management que contiene las entradas de todos los componentes registrados.
No utilice los siguientes nombres para plantillas, temas, componentes, sitios ni páginas de sitios: authsite, content, pages, scstemplate_*, _comps, _components, _compsdelivery, _idcservice, _sitescloud, _sitesclouddelivery, _themes, _themesdelivery. Aunque puede utilizar los siguientes nombres para las páginas del sitio, no los utilice para plantillas, temas, componentes ni sitios: documents, sites.
Tipos de componentes
El catálogo de componentes soporta los siguientes tipos de componentes:
Componente local
Componente local representado en un marco en línea
Componente remoto
El tipo de componente se almacena como un atributo de extensión, "xScsAppType"
, de la carpeta de componentes. A continuación se muestran los valores válidos.
Tipo | Descripción |
---|---|
Componente local |
Se espera que todas las dependencias sean locales. |
Componente local representado en un marco en línea |
El componente se sirve desde el mismo dominio que Oracle Content Management. |
Componente remoto |
El componente se sirve desde una ubicación remota. |
Estructura de archivos del componente
Cada uno de los tipos de componente tiene un juego diferente de archivos cuando se crea en el catálogo de componentes en función de cómo se implante.
Componente local:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
Componente local que utiliza un marco en línea:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
js
sites.min.js
knockout.min.js
jquery.min.js
Componente remoto:
/Components/component-name
appinfo.json
_folder_icon.jpg
keys.json
Metadatos de carpeta
Los datos de registro del componente se almacenan en los metadatos de la carpeta. Las siguientes propiedades se utilizarán para identificar de forma única al componente y su tipo.
Propiedad | Descripción |
---|---|
app name |
Nombre de la carpeta que designa el nombre del componente. |
app description |
Descripción de la carpeta. |
app guid |
Cada componente se asocia a un GUID y se almacena como un atributo de extensión |
app type |
La propiedad designa el tipo de componente. Se almacena como un atributo de extensión |
Nota:
La propiedadiconUrl
, la cual se almacena como un atributo de extensión xScsAppIconUrl
, se ha dejado de usar.appinfo.json File
El archivo de registro appinfo.json
de cada tipo de componente solo contiene datos que no están disponibles en los metadatos de la carpeta. Las propiedades del componente que se definen en los metadatos de la carpeta no se duplican en el archivo appinfo.json
.
Componente local:
{ "settingsData":{ "settingsHeight":80, "settingsRenderOption"; "dialog", "settingsWidth":300, "componentLayouts":[], "triggers":[], "actions":[] }, "initialData":{ "customSettingsData":[], } }
Componente local representado en un marco en línea:
{ "endpoints": { "settings": { "height": "300", "width": "400" } } "initialData": { "customSettingsData": {} } }
Componente remoto:
{ "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": {} } }
No hay ningún valor "url"
registrado para los componentes locales. Utilizan determinados archivos cuyo contenido se puede editar, pero no se puede cambiar la ubicación ni el nombre.
Los componentes locales utilizan los archivos assets/render.js
y assets/settings.html
.
Los componentes locales representados en un marco en línea utilizan los archivos assets/render.html
y assets/settings.html
.
Los componentes remotos utilizan los valores "url"
que se hayan especificado.