Tworzenie własnych składników niestandardowych pozwala na tworzenie elementów złożonych, które można osadzać na stronach serwisu przy użyciu dowolnej technologii dla stron. Takie działanie skutecznie umożliwia rozszerzenie listy składników udostępnionych przez usługę Oracle Content Management.
Wpisy wszystkich zarejestrowanych składników są przechowywane w Katalogu składników, będącym przeznaczonym do tego celu folderem w Oracle Content Management.
Dla szablonów, motywów, składników, serwisów ani stron serwisów nie wolno używać następujących nazw: authsite, content, pages, scstemplate_*, _comps, _components, _compsdelivery, _idcservice, _sitescloud, _sitesclouddelivery, _themes, _themesdelivery. Następujących nazw można używać dla stron serwisów, ale nie można używać dla szablonów, motywów, składników ani serwisów: documents, sites.
Typy składników
Katalog składników obsługuje następujące typy składników:
Składnik lokalny
Składnik lokalny renderowany w ramce wstawkowej
Składnik odległy
Typ składnika jest przechowywany jako atrybut rozszerzenia (xScsApType
) folderu składnika. Poniżej są podane poprawne wartości.
Typ | Opis |
---|---|
Składnik lokalny |
Wszystkie zależności powinny być lokalne. |
Składnik lokalny renderowany w ramce wstawkowej |
Składnik jest obsługiwany z tej samej domeny, z której jest obsługiwana usługa Oracle Content Management. |
Składnik odległy |
Składnik jest obsługiwany z lokalizacji odległej. |
Struktura pliku składnika
Podczas tworzenia typu składnika w katalogu składników, każdy z typów składników ma inny zestaw plików zależny od sposobu implementacji.
Składnik lokalny:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
Składnik lokalny używający ramki wstawkowej:
/Components/component-name
appinfo.json
_folder_icon.jpg
assets
settings.html
render.js
js
sites.min.js
knockout.min.js
jquery.min.js
Składnik odległy:
/Components/component-name
appinfo.json
_folder_icon.jpg
keys.json
Metadane folderu
Dane rejestracji składnika są przechowywane w metadanych folderu. Poniższe właściwości umożliwiają unikatowe identyfikowanie składnika i jego typu.
Właściwość | Opis |
---|---|
app name |
Nazwa folderu, która wyznacza nazwę składnika. |
app description |
Opis folderu. |
app guid |
Każdy składnik jest powiązany z identyfikatorem GUID i jest przechowywany jako atrybut rozszerzenia |
app type |
Właściwość wyznacza typ składnika. Jest przechowywany jako atrybut rozszerzenia |
Uwaga:
WłaściwośćiconUrl
, która jest przechowywana jako atrybut rozszerzenia xScsAppIconUrl
, jest już nieużywana.Plik appinfo.json
Plik rejestracji appinfo.json
dla każdego typu składnika zawiera tylko te dane, które nie są dostępne w metadanych folderu. Właściwości składnika, które są zdefiniowane w metadanych folderu, nie są powielane w pliku appinfo.json
.
Składnik lokalny:
{ "settingsData":{ "settingsHeight":80, "settingsRenderOption"; "dialog", "settingsWidth":300, "componentLayouts":[], "triggers":[], "actions":[] }, "initialData":{ "customSettingsData":[], } }
Składnik lokalny renderowany w ramce wstawkowej:
{ "endpoints": { "settings": { "height": "300", "width": "400" } } "initialData": { "customSettingsData": {} } }
Składnik odległy:
{ "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": {} } }
W przypadku składników lokalnych nie ma żadnych rejestrowanych wartości "url"
. Składniki te używają kilku plików, których zawartość można edytować, lecz nie można zmienić ich lokalizacji ani nazwy.
Składniki lokalne używają plików assets/render.js
i assets/settings.html
.
Składniki lokalne, renderowane w ramce wstawkowej, używają plików assets/render.html
i assets/settings.html
.
Składniki odległe używają określonych wartości "url"
.