Et tema skal have filen components.json
placeret i /ThemeName/components.json
, som angiver de komponenter, der bruges i temaet.
Denne fil skal indeholde gyldig JSON, og den skal som minimum indeholde en tom JSON-array []
.
Filsyntaksen i components.json
viser en liste over alle lokale komponenter og understøtter fuldt ud kategorisering af komponenter. (Eksterne komponenter registreres i komponentkataloget).
Uanset hvilke komponenter der føjes til filen components.json
på temaniveau (herunder ingen), udfylder Oracle Content Management et standardsæt af komponenter, som er tilgængelige for brugerne. Dette standardsæt defineres i kildekoden. Følgende liste viser de komponenter og (udfyldte) komponenter, der gengives i inline-rammer. Desuden vil eventuelle eksterne komponenter, der er registreret på tjenesteniveauet og gjort tilgængelige for brugere i din instans, være tilgængelige i Site Builder.
Følgende lokale komponenter er inkluderet i Oracle Content Management.
Navn | Type | ID |
---|---|---|
Titel |
scs-title |
scs-title |
Afsnit |
scs-paragragh |
scs-paragragh |
Billede |
scs-image |
scs-image |
Galleri |
scs-gallery |
scs-gallery |
Gallerigitter |
scs-gallerygrid |
scs-gallerygrid |
Dokument |
scs-document |
scs-document |
Knap |
scs-button |
scs-button |
Kort |
scs-map |
scs-map |
Opdeler |
scs-divider |
scs-divider |
Afstandselement |
scs-spacer |
scs-spacer |
YouTube |
scs-youtube |
scs-youtube |
Social værktøjslinje |
scs-socialbar |
scs-socialbar |
Video |
scs-video |
scs-video |
Artikel (tilpasset komponent) |
scs-component |
scs-comp-article |
Overskrift (tilpasset komponent) |
scs-component |
scs-comp-headline |
Billede og tekst (tilpasset komponent) |
scs-component |
scs-comp-image-text |
Disse komponenter, der gengives i inline-rammer, er inkluderet i Oracle Content Management. De inkluderer ikke registrerede eksterne komponenter.
Navn | Type | ID |
---|---|---|
Samtale |
scs-app |
Samtale |
Dokumentstyring |
scs-app |
Dokumentstyring |
Mappeliste |
scs-app |
Mappeliste |
Filliste |
scs-app |
Filliste |
Facebook Synes godt om |
scs-app |
Facebook Synes godt om |
Facebook Anbefal |
scs-app |
Facebook Anbefal |
Twitter Følg |
scs-app |
Twitter Følg |
Twitter-deling |
scs-app |
Twitter-deling |
Generelt format
Det generelle format for filen components.json
er følgende:
Egenskaber for komponenter angives i hver enkelt komponent. Egenskaberne "components"
eller "apps"
på øverste niveau frarådes.
Hver komponent har en "type"
-egenskab. Komponenter kan kun have bestemte værdier (alle mulige værdier vises i tabellen for standardkomponenter).
Hver komponent har en "id"
-egenskab, som skal være entydig. Denne egenskab bruges til at skelne mellem komponenter, der har samme "type"
. Tidligere havde apps egenskaben "appName"
. Mens "appName"
stadig virker, selvom egenskaben "id"
ikke er tilgængelig, frarådes egenskaben "appName"
.
Hver komponent har egenskaben "name"
, der er fremvisningsnavnet i brugergrænsefladen. Hvis der ikke er angivet tilbagestillingsværdier, vil komponenters værdi være navnet på den tilsvarende standardkomponent, mens værdien er ID'et for eksterne komponenter.
Her er et eksempel på filen components.json
:
[ { "name": "COMP_CONFIG_TEXT_CATEGORY_NAME", "list": [ { "type": "scs-title", "id": "my-headline", "name": "My Headline", ... }, { ... },... ] }, { "name": "My own category name", "list": [ ... ] } ]
Den generelle struktur er en JSON-array af kategoriobjekter. Hvert kategoriobjekt har egenskaben "name"
og egenskaben "list"
. Egenskaben "name"
kan være en nøgle, der mapper til en lokaliseret streng. Hvis disse standardkategorier ikke er tilstrækkelige, kan du angive dit eget kategorinavn, som ikke bliver lokaliseret. Følgende tabel viser tilgængelige standardkategorier og tilsvarende nøgler.
Nøgle | Kategorinavn (engelsk) |
---|---|
COMP_CONFIG_CONTENT_CATEGORY_NAME |
Content |
COMP_CONFIG_CUSTOM_CATEGORY_NAME |
Custom |
COMP_CONFIG_MEDIA_CATEGORY_NAME |
Media |
COMP_CONFIG_SOCIAL_CATEGORY_NAME |
Social |
COMP_CONFIG_TEXT_CATEGORY_NAME |
Tekst |
Egenskaben "list"
i hvert kategoriobjekt indeholder en array af komponentobjekter. Hver komponent eller hvert objekt skal have egenskaberne "type"
og "id"
. De andre egenskaber er valgfrie.
Egenskaben "type"
skal være lig med en af de typer, der findes i standardkomponenterne. Hvis "type"
ikke allerede findes, vises komponenten ikke.
Egenskaben "id"
skal være entydig på tværs af komponenterne. Hvis "id"
allerede findes, vises komponenten ikke.
Egenskaben "name"
er fremvisningsnavnet for komponenten i brugergrænsefladen. Den erstatter den tidligere egenskab "appName"
for apps (nu eksterne komponenter).
Alle andre egenskaber behandles på samme måde som i tidligere versioner.
Tilføje nye komponenter i components.json
Du har ikke tilladelse til at modificere standardkomponenterne. Men du kan oprette en ny komponent, der er baseret på en eksisterende standardkomponent. Du kan for eksempel oprette en ny komponent, der er baseret på komponenten "scs-title"
, som angiver standardtekst. Du skal som minimum angive egenskaberne "type"
og "id"
for at oprette en ny komponent.
Egenskaben "type"
skal være lig med en af de typer, der findes i standardkomponenterne. Hvis "type"
ikke allerede findes, vises komponenten ikke.
Egenskaben "id"
skal være entydig på tværs af komponenterne. Hvis "id"
allerede findes, vises komponenten ikke.
Her er et eksempel på kode, der tilføjer en ny titelkomponent. Denne komponent vises sammen med standardtitelkomponenten.
[ { "name": "COMP_CONFIG_TEXT_CATEGORY_NAME", "list": [ { "type": "scs-title", "id": "my-headline" } ] } ]
Her er et eksempel på kode, der tilføjer en ny titelkomponent med et fremvisningsnavn og standardtekst.
[ { "name": "COMP_CONFIG_TEXT_CATEGORY_NAME", "list": [ { "type": "scs-title", "id": "my-headline", "name": "My Headline", "initialData": { "userText": "This is a second title component" } } ] } ]
Bemærk, at titelkomponenten tager alle egenskaberne fra standardtitelkomponenten som basis og anvender modificeringer på temaniveau oveni for at oprette den nye komponent.
Bagudkompatibilitet
Filen components.json
kan stadig læses i det tidligere format.
Filer med egenskaberne "components"
eller "apps"
på øverste niveau.
Hvis filen indeholder egenskaben "apps"
, bliver brugerdefinerede eksterne komponenter under denne egenskab stadig indlæst.
Hvis filen indeholder egenskaben "apps"
på øverste niveau, skal du antage, at eventuelle eksterne komponenter nedenunder på listen har typen "scs-app"
.
Hvis egenskaben "appName"
er til stede, skal du angive "id"
til værdien "appName"
. Fremvisningsnavnet vil være det samme som "name"
, hvis det er angivet, eller falder tilbage på værdien af "id"
.