Ένα θέμα πρέπει να έχει ένα αρχείο components.json
στη θέση /ThemeName/components.json
, που ορίζει τα συστατικά στοιχεία που χρησιμοποιούνται στο θέμα.
Αυτό το αρχείο πρέπει να περιέχει έγκυρο JSON και το ελάχιστο που πρέπει να περιέχει το αρχείο είναι ένας κενός πίνακας JSON []
.
Η σύνταξη αρχείου components.json
Παραθέτει όλα τα τοπικά συστατικά στοιχεία και υποστηρίζει πλήρως την κατηγοριοποίηση των συστατικών στοιχείων. (Τα απομακρυσμένα συστατικά στοιχεία εγγράφονται στον Κατάλογο συστατικών στοιχείων.)
Ανεξάρτητα από το ποια συστατικά στοιχεία προστίθενται στο αρχείο επιπέδου θέματος components.json
(όπως και κανένα), το Oracle Content Management συμπληρώνει ένα προεπιλεγμένο σύνολο συστατικών στοιχείων που είναι διαθέσιμο στους χρήστες. Αυτό το προεπιλεγμένο σύνολο ορίζεται στον πηγαίο κώδικα. Η ακόλουθη λίστα απεικονίζει τα συστατικά στοιχεία και (τροφοδοτούμενα) συστατικά στοιχεία που αποδίδονται σε ενσωματωμένα πλαίσια. Επιπλέον, τυχόν απομακρυσμένα συστατικά στοιχεία που εγγράφονται σε επίπεδο υπηρεσίας και γίνονται διαθέσιμα στους χρήστες στο στιγμιότυπό σας θα είναι διαθέσιμα στο Εργαλείο δημιουργίας τοποθεσιών.
Τα ακόλουθα συστατικά στοιχεία περιλαμβάνονται στο Oracle Content Management.
Όνομα | Τύπος | ID |
---|---|---|
Τίτλος |
scs-title |
scs-title |
Παράγραφος |
scs-paragragh |
scs-paragragh |
Εικόνα |
scs-image |
scs-image |
"Συλλογή" |
scs-gallery |
scs-gallery |
Πλέγμα συλλογής |
scs-gallerygrid |
scs-gallerygrid |
Έγγραφο |
scs-document |
scs-document |
Κουμπί |
scs-button |
scs-button |
Χάρτης |
scs-map |
scs-map |
Διαχωριστικό |
scs-divider |
scs-divider |
Αποστάτης |
scs-spacer |
scs-spacer |
YouTube |
scs-youtube |
scs-youtube |
Γραμμή κοινωνικών μέσων |
scs-socialbar |
scs-socialbar |
Βίντεο |
scs-video |
scs-video |
Άρθρο (προσαρμοσμένο συστατικό στοιχείο) |
scs-component |
scs-comp-article |
Επικεφαλίδα (προσαρμοσμένο συστατικό στοιχείο) |
scs-component |
scs-comp-headline |
Εικόνα και κείμενο (προσαρμοσμένο συστατικό στοιχείο) |
scs-component |
scs-comp-image-text |
Αυτά τα συστατικά στοιχεία, που αποδίδονται σε ενσωματωμένα πλαίσια, περιλαμβάνονται στο Oracle Content Management. Δεν περιλαμβάνουν εγγεγραμμένα απομακρυσμένα συστατικά στοιχεία.
Όνομα | Τύπος | ID |
---|---|---|
Συζήτηση |
scs-app |
Συζήτηση |
Εφαρμογή διαχείρισης εγγράφων |
scs-app |
Εφαρμογή διαχείρισης εγγράφων |
Λίστα φακέλων |
scs-app |
Λίστα φακέλων |
Λίστα αρχείων |
scs-app |
Λίστα αρχείων |
"Μου αρέσει" στο Facebook |
scs-app |
"Μου αρέσει" στο Facebook |
Πρόταση στο Facebook |
scs-app |
Πρόταση στο Facebook |
Παρακολούθηση στο Twitter |
scs-app |
Παρακολούθηση στο Twitter |
Κοινή χρήση στο Twitter |
scs-app |
Κοινή χρήση στο Twitter |
Γενική μορφή
Η γενική μορφή του αρχείου components.json
ακολουθεί:
Οι ιδιότητες για τα συστατικά στοιχεία καθορίζονται εντός κάθε συστατικού στοιχείου. Οι ιδιότητες ανωτάτου επιπέδου "components"
ή "apps"
έχουν καταργηθεί.
Κάθε συστατικό στοιχείο έχει μια ιδιότητα "type"
. Τα συστατικά στοιχεία μπορεί να έχουν μόνο συγκεκριμένες τιμές (όλες οι πιθανές τιμές παρατίθενται στον πίνακα για τα προεπιλεγμένα συστατικά στοιχεία).
Κάθε συστατικό στοιχείο έχει μια ιδιότητα "id"
, η οποία πρέπει να είναι μοναδική. Αυτή η ιδιότητα χρησιμοποιείται για τη διάκριση μεταξύ συστατικών στοιχείων με το ίδιο "type"
. Προηγούμενα, οι εφαρμογές είχαν την ιδιότητα "appName"
. Παρόλο που η ιδιότητα "appName"
εξακολουθεί να λειτουργεί αν η ιδιότητα "id"
δεν είναι διαθέσιμη, η ιδιότητα "appName"
έχει καταργηθεί.
Κάθε συστατικό στοιχείο έχει μια ιδιότητα "name"
που είναι το εμφανιζόμενο όνομα στο περιβάλλον εργασίας. Αν δεν έχουν καθοριστεί εναλλακτικές τιμές, για τα συστατικά στοιχεία η τιμή είναι το όνομα του αντίστοιχου προεπιλεγμένου συστατικού στοιχείου και για τα απομακρυσμένα συστατικά στοιχεία η τιμή είναι το αναγνωριστικό.
Ακολουθεί ένα παράδειγμα ενός αρχείου components.json
:
[ { "name": "COMP_CONFIG_TEXT_CATEGORY_NAME", "list": [ { "type": "scs-title", "id": "my-headline", "name": "My Headline", ... }, { ... },... ] }, { "name": "My own category name", "list": [ ... ] } ]
Η γενική δομή είναι ένας πίνακας JSON με αντικείμενα κατηγορίας. Κάθε αντικείμενο κατηγορίας έχει μια ιδιότητα "name"
και μια ιδιότητα "list"
. Η ιδιότητα "name"
μπορεί να είναι ένα κλειδί που αντιστοιχεί σε μια τοπικοποιημένη συμβολοσειρά. Αν αυτές οι προεπιλεγμένες κατηγορίες δεν επαρκούν, μπορείτε να παρέχετε το δικό σας όνομα κατηγορίας, η οποία δεν θα τοπικοποιηθεί. Ο ακόλουθος πίνακας παραθέτει τις διαθέσιμες προεπιλεγμένες κατηγορίες και τα αντίστοιχα κλειδιά.
Κλειδί | Όνομα κατηγορίας (Αγγλικά) |
---|---|
COMP_CONFIG_CONTENT_CATEGORY_NAME |
Content |
COMP_CONFIG_CUSTOM_CATEGORY_NAME |
Προσαρμοσμένη |
COMP_CONFIG_MEDIA_CATEGORY_NAME |
Μέσα |
COMP_CONFIG_SOCIAL_CATEGORY_NAME |
Social |
COMP_CONFIG_TEXT_CATEGORY_NAME |
Κείμενο |
Η ιδιότητα "list"
σε κάθε αντικείμενο κατηγορίας περιέχει έναν πίνακα αντικειμένων συστατικών στοιχείων. Κάθε συστατικό στοιχείο ή αντικείμενο πρέπει να έχει τις ιδιότητες "type"
και "id"
. Οι άλλες ιδιότητες είναι προαιρετικές.
Η ιδιότητα "type"
πρέπει να είναι ίση με έναν από τους τύπους που βρίσκονται στα προεπιλεγμένα συστατικά στοιχεία. Αν η ιδιότητα "type"
δεν υπάρχει ήδη, το συστατικό στοιχείο δεν θα εμφανιστεί.
Η ιδιότητα "id"
πρέπει να είναι μοναδική σε όλα τα συστατικά στοιχεία. Αν η ιδιότητα "id"
βρεθεί να υπάρχει ήδη, το συστατικό στοιχείο δεν θα εμφανιστεί.
Η ιδιότητα "name"
είναι το εμφανιζόμενο όνομα για το συστατικό στοιχείο στο περιβάλλον εργασίας. Αυτή αντικαθιστά την προηγούμενη ιδιότητα "appName"
για εφαρμογές (τώρα απομακρυσμένα συστατικά στοιχεία).
Όλες οι άλλες ιδιότητες αντιμετωπίζονται το ίδιο με τις προηγούμενες εκδόσεις.
Προσθήκη νέων συστατικών στοιχείων στο αρχείο components.json
Δεν επιτρέπεται να τροποποιήσετε τα προεπιλεγμένα συστατικά στοιχεία. Ωστόσο, μπορείτε να δημιουργήσετε ένα νέο συστατικό στοιχείο με βάση ένα υπάρχον προεπιλεγμένο συστατικό στοιχείο. Για παράδειγμα, μπορείτε να δημιουργήσετε ένα νέο συστατικό στοιχείο με βάση το συστατικό στοιχείο "scs-title"
, το οποίο ορίζει ένα προεπιλεγμένο κείμενο. Το ελάχιστο που απαιτείται για την προσθήκη ενός νέου συστατικού στοιχείου είναι να καθορίσετε τις ιδιότητες "type"
και "id"
.
Η ιδιότητα "type"
πρέπει να είναι ίση με έναν από τους τύπους που βρίσκονται στα προεπιλεγμένα συστατικά στοιχεία. Αν η ιδιότητα "type"
δεν υπάρχει ήδη, το συστατικό στοιχείο δεν θα εμφανιστεί.
Η ιδιότητα "id"
πρέπει να είναι μοναδική σε όλα τα συστατικά στοιχεία. Αν η ιδιότητα "id"
βρεθεί να υπάρχει ήδη, το συστατικό στοιχείο δεν θα εμφανιστεί.
Ακολουθεί ένα παράδειγμα κώδικα για την προσθήκη ενός νέου συστατικού στοιχείου Τίτλου. Αυτό το συστατικό στοιχείο θα εμφανίζεται μαζί με το προεπιλεγμένο συστατικό στοιχείο τίτλου.
[ { "name": "COMP_CONFIG_TEXT_CATEGORY_NAME", "list": [ { "type": "scs-title", "id": "my-headline" } ] } ]
Ακολουθεί ένα παράδειγμα κώδικα για την προσθήκη ενός νέου συστατικού στοιχείου Τίτλου με ένα εμφανιζόμενο όνομα και προεπιλεγμένο κείμενο.
[ { "name": "COMP_CONFIG_TEXT_CATEGORY_NAME", "list": [ { "type": "scs-title", "id": "my-headline", "name": "My Headline", "initialData": { "userText": "This is a second title component" } } ] } ]
Σημειώστε ότι το συστατικό στοιχείο τίτλου παίρνει όλες τις ιδιότητες του προεπιλεγμένου συστατικού στοιχείου Τίτλου ως βάση και εφαρμόζει τροποποιήσεις επιπέδου θέματος πάνω από αυτό για τη δημιουργία του νέου συστατικού στοιχείου.
Συμβατότητα με προηγούμενες εκδόσεις
Τα αρχεία components.json
στην προηγούμενη μορφή μπορούν να διαβαστούν ακόμα.
Αρχεία με ιδιότητες ανωτάτου επιπέδου "components"
ή "apps"
.
Αν το αρχείο περιέχει μια ιδιότητα "apps"
, τα απομακρυσμένα συστατικά στοιχεία που ορίζονται από τον χρήστη κάτω από αυτήν την ιδιότητα εξακολουθούν να φορτώνονται.
Αν το αρχείο περιέχει μια ιδιότητα ανωτάτου επιπέδου "apps"
, τότε θεωρείται ότι όλα τα απομακρυσμένα συστατικά στοιχεία που παρατίθενται από κάτω από αυτή έχουν τύπο "scs-app"
.
Αν υπάρχει η ιδιότητα "appName"
, καθορίστε στην ιδιότητα "id"
την τιμή "appName"
. Το εμφανιζόμενο όνομα θα είναι το ίδιο με το "name"
, αν έχει καθοριστεί, ή επιστρέφει στην τιμή "id"
.