Ανάπτυξη προσαρμοσμένων διατάξεων ενότητας με API

Μπορείτε να αναπτύξετε προσαρμοσμένες διατάξεις ενότητας στο Oracle Content Management με API διάταξης ενότητας, που περιλαμβάνει API απόδοσης και API επεξεργασίας.

Για να εξετάσετε αρχεία έναρξης, ανατρέξτε στην ενότητα Δημιουργία διάταξης ενότητας. Τα αρχεία έναρξης για τις διατάξεις ενότητας περιλαμβάνουν σχόλια με λεπτομέρειες σχετικά με τη δομή των αρχείων διάταξης ενότητας.

API απόδοσης

Τα API απόδοσης, που φορτώνονται από τη λειτουργική μονάδα render.js, χρησιμοποιούνται στο Εργαλείο δημιουργίας τοποθεσιών και κατά τον χρόνο εκτέλεσης.

API απόδοσης Περιγραφή Παράμετροι εισόδου Αποτέλεσμα επιστροφής
(Κατασκευή) Ενεργοποιεί τη λειτουργική μονάδα απόδοσης διάταξης ενότητας.

Ένα αντικείμενο JavaScript που περιέχει τις ακόλουθες ιδιότητες:

  • sectionlayoutData (Αντικείμενο) : Τα δεδομένα διάταξης ενότητας που βρίσκονται στο μοντέλο σελίδας.

  • componentId (Συμβολοσειρά): Η τιμή componentId της διάταξης ενότητας, συνήθως ένα GUID.

  • renderMode (Συμβολοσειρά, προαιρετική): Η κατάσταση απόδοσης για τη λειτουργία απόδοσης.

  • customSettingsData (Αντικείμενο): Ένα αντίγραφο του στοιχείου customSettingsData που βρίσκεται στο στοιχείο sectionLayoutData.

Γίνεται έναρξη των API απόδοσης διάταξης ενότητας.
απόδοση

Εκπέμπει στοιχεία DOM κατάλληλα για τη διάταξη ενότητας στη σελίδα, συμπεριλαμβανομένων DIV κοντέινερ για θυγατρικά συστατικά στοιχεία.

container (Στοιχείο) : Το στοιχείο DOM μέσα στο οποίο πρέπει να αποδοθεί η σήμανση της διάταξης ενότητας.

Μετά την επιστροφή αυτής της μεθόδου, θα αποδοθούν τα θυγατρικά συστατικά στοιχεία.

Μπορείτε να προσδιορίσετε θυγατρικά συστατικά στοιχεία εντοπίζοντας θυγατρικά στοιχεία div[id]

addComponent

Χρησιμοποιείται με συστατικά στοιχεία λίστας περιεχομένου για τη δυναμική προσθήκη θυγατρικών συστατικών στοιχείων σε μια διάταξη ενότητας.

Αυτή η συνάρτηση είναι προαιρετική.

container (Στοιχείο): Το στοιχείο DOM μέσα στο οποίο πρέπει να αποδοθεί το νέο συστατικό στοιχείο.

componentId (Συμβολοσειρά): Το αναγνωριστικό του νέου συστατικού στοιχείου για προσθήκη στη διάταξη ενότητας.

Μετά την επιστροφή αυτής της μεθόδου, θα αποδοθεί το στοιχείο του οποίου το αναγνωριστικό αντιστοιχεί με την είσοδο στο στοιχείο componentId.

API επεξεργασίας

Η λειτουργική μονάδα edit.js φορτώνεται αν η ιδιότητα hasEditHandlers έχει οριστεί σε true στο αρχείο appinfo.json που συσχετίζεται με τη διάταξη ενότητας.

Τα API επεξεργασίας χρησιμοποιούνται στο Εργαλείο δημιουργίας τοποθεσιών.

Όλες οι συναρτήσεις σε αυτή τη λειτουργική μονάδα εκτός από την Κατασκευή είναι προαιρετικές.

API επεξεργασίας Περιγραφή Παράμετροι εισόδου Αποτέλεσμα επιστροφής
(Κατασκευή) Ενεργοποιεί τη λειτουργική μονάδα επεξεργασίας διάταξης ενότητας.

Ένα αντικείμενο JavaScript που περιέχει την ακόλουθη ιδιότητα:

  • componentId (Συμβολοσειρά): Η τιμή componentId της διάταξης ενότητας, συνήθως ένα GUID.

Γίνεται έναρξη των API επεξεργασίας διάταξης ενότητας.

getCapabilities

Επιστρέφει ένα αντικείμενο που περιγράφει τις δυνατότητες επεξεργασίας της διάταξης ενότητας.

Ένα αντικείμενο JavaScript που περιγράφει τις δυνατότητες επεξεργασίας της διάταξης ενότητας.

Κατά την είσοδο, οι προεπιλεγμένες δυνατότητες θα παρασχεθούν στη συνάρτηση. Η συνάρτηση μπορεί να τροποποιήσει το αντικείμενο Δυνατότητες όπως απαιτείται.

Το αντικείμενο Δυνατότητες μπορεί να περιλαμβάνει τις εξής δυνατότητες:

  • title (Συμβολοσειρά): Ο τίτλος της διάταξης ενότητας που θα εμφανίζεται στον χρήστη.

  • settingsTitle (Συμβολοσειρά): Ο τίτλος που θα εμφανίζεται στο παράθυρο διαλόγου "Πίνακας ρυθμίσεων".

  • hasSettings (Boolean): Υποδεικνύει αν η διάταξη ενότητας υποστηρίζει έναν Πίνακα ρυθμίσεων.

  • allowMove (Boolean): Υποδεικνύει αν η διάταξη ενότητας επιτρέπει τη μετακίνηση θυγατρικών στοιχείων.

  • allowDelete (Boolean): Υποδεικνύει αν η διάταξη ενότητας επιτρέπει τη διαγραφή θυγατρικών στοιχείων.

  • isHidden (Boolean): Υποδεικνύει αν η διάταξη ενότητας είναι προς το παρόν κρυφή στην απόκριση των επιλογών χρήστη.

  • dropTarget (Boolean): Υποδεικνύει αν η διάταξη ενότητας είναι ο προορισμός για λειτουργίες μεταφοράς και απόθεσης.

  • customMenuOptions (Πίνακας): Προσαρμοσμένες επιλογές μενού για προσθήκη στο μενού περιβάλλοντος "Διάταξη ενότητας". Κάθε αντικείμενο επιλογής μενού έχει τις ακόλουθες ιδιότητες:

    • label (Συμβολοσειρά) : Το εμφανιζόμενο κείμενο του στοιχείου μενού.

    • action (Συνάρτηση): Η συνάρτηση που καλείται όταν επιλέγεται το στοιχείο μενού.

    • disabled (Boolean): Υποδεικνύει ότι το στοιχείο μενού πρέπει να εμφανίζεται σε απενεργοποιημένη κατάσταση.

    • icon (Συμβολοσειρά): Η διεύθυνση τοποθεσίας που εμφανίζεται μαζί με την ετικέτα στο στοιχείο μενού. (Η ιδιότητα είναι δεσμευμένη για μελλοντική χρήση.)

    • checkmark (Boolean): Υποδεικνύει ότι πρέπει να εμφανίζεται ένα σημείο ελέγχου μαζί με την ετικέτα στο στοιχείο μενού.

    • subMenuItems (Πίνακας): Επιλογές μενού για εμφάνιση σε ένα υπομενού.

(Αντικείμενο): Οι δυνατότητες για τη διάταξη ενότητας.

getCaptionContent

Επιστρέφει το εμφανιζόμενο όνομα της διάταξης ενότητας, το οποίο θα εμφανίζεται στα στοιχεία του περιβάλλοντος χρήστη.

Καμία.

(Συμβολοσειρά): Το εμφανιζόμενο όνομα της διάταξης ενότητας.

filterCapabilities

Επιτρέπει στη διάταξη ενότητας να τροποποιεί το αντικείμενο Δυνατότητες πριν εμφανιστούν τα μενού στον χρήστη.

Μπορείτε να χρησιμοποιήσετε αυτό το API για την προσαρμογή ή την κατάργηση επιλογών μενού. (Δείτε επίσης την παράμετρο getCapabilities.)

Ένα αντικείμενο JavaScript που περιγράφει τις δυνατότητες επεξεργασίας της διάταξης ενότητας. Κατά την είσοδο, οι προεπιλεγμένες δυνατότητες θα παρασχεθούν στη συνάρτηση.

(Αντικείμενο) Οι δυνατότητες για τη διάταξη ενότητας.
onDragOver Καλείται κατά τη διάρκεια μιας λειτουργίας μεταφοράς και απόθεσης για να υποδείξει αν το μεταφερόμενο στοιχείο μπορεί να αποτεθεί στη διάταξη ενότητας.

eventObject (Αντικείμενο συμβάντος): Ένα αντικείμενο συμβάντος που διατηρεί πληροφορίες για το συμβάν μεταφοράς.

dataTransfer (Αντικείμενο μεταφοράς δεδομένων): Ένα αντικείμενο DataTransfer που διατηρεί πληροφορίες για το στοιχείο που μεταφέρεται πάνω στη διάταξη ενότητας.

(Boolean) Μια τιμή που υποδεικνύει αν το μεταφερόμενο στοιχείο μπορεί να γίνει αποδεκτό από τη διάταξη ενότητας.

Επιστρέφει true, αν η διάταξη ενότητας μπορεί να αποδεχτεί το μεταφερόμενο στοιχείο, διαφορετικά false.

onDrop Καλείται κατά το τμήμα απόθεσης μιας λειτουργίας μεταφοράς και απόθεσης για να υποδείξει ότι το μεταφερόμενο στοιχείο πρέπει να τοποθετηθεί μέσα στη διάταξη ενότητας.

eventObject (Αντικείμενο συμβάντος) : Ένα αντικείμενο συμβάντος που διατηρεί πληροφορίες για το συμβάν απόθεσης.

dataTransfer (Αντικείμενο μεταφοράς δεδομένων) Ένα αντικείμενο μεταφοράς δεδομένων που διατηρεί πληροφορίες για το στοιχείο που μεταφέρεται πάνω στη διάταξη ενότητας.

(Boolean) Μια τιμή που υποδεικνύει αν τη λειτουργία απόθεσης χειρίστηκε η διάταξη ενότητας.

Η επιστροφή true παρακάμπτει την προεπιλεγμένη λογική.

onAddComponent Ειδοποιεί τη διάταξη ενότητας ότι μια λειτουργία μεταφοράς και απόθεσης πρόσθεσε ένα στοιχείο στη διάταξη ενότητας.

eventObject (Αντικείμενο συμβάντος): Ένα αντικείμενο συμβάντος που διατηρεί πληροφορίες για το συμβάν μεταφοράς.

dataTransfer (Αντικείμενο μεταφοράς δεδομένων): Ένα αντικείμενο DataTransfer που διατηρεί πληροφορίες για το στοιχείο που αποτίθεται πάνω στη διάταξη ενότητας.

componentId (Συμβολοσειρά): Η τιμή componentId του πρόσφατα προστιθέμενου στοιχείου.

Ειδοποίηση διάταξης ενότητας.
onMoveComponent

Ειδοποιεί τη διάταξη ενότητας ότι μια λειτουργία μεταφοράς και απόθεσης μετακίνησε ένα στοιχείο στη διάταξη ενότητας.

eventObject (Αντικείμενο συμβάντος): Ένα αντικείμενο συμβάντος που διατηρεί πληροφορίες για το συμβάν μεταφοράς.

dataTransfer (Αντικείμενο μεταφοράς δεδομένων): Ένα αντικείμενο DataTransfer που διατηρεί πληροφορίες για το στοιχείο που αποτίθεται πάνω στη διάταξη ενότητας.

componentId (Συμβολοσειρά): Η τιμή componentId του μεταφερόμενου στοιχείου.

Ειδοποίηση διάταξης ενότητας.
getSettingsData

Επιτρέπει στην ενότητα διάταξης να αλλάξει τα δεδομένα ρυθμίσεων πριν εμφανιστεί ο Πίνακας ρυθμίσεων.

settingsData (Αντικείμενο): Τα προεπιλεγμένα δεδομένα ρυθμίσεων που υπολογίζονται για τη Διάταξη ενότητας

(Αντικείμενο) Τα δεδομένα ρυθμίσεων για τη διάταξη ενότητας.
updateSettings

Επιτρέπει στη διάταξη ενότητας να αλλάξει τις ρυθμίσεις της αφού έχει κλείσει ο Πίνακας ρυθμίσεων.

Αυτό το API καλείται ακριβώς πριν την αποθήκευση των ρυθμίσεων στο μοντέλο σελίδας.

parameters (Αντικείμενο): Το αντικείμενο μη επεξεργασμένων παραμέτρων που επιστρέφεται από τον Πίνακα ρυθμίσεων.

sectionLayoutData (Αντικείμενο) : Τα δεδομένα διάταξης ενότητας που θα αποθηκευτούν. Θα δημιουργηθούν προεπιλεγμένα δεδομένα από τη parameters (Αντικείμενο) και θα μεταβιβαστούν στη συνάρτηση αυτής της παραμέτρου.

(Αντικείμενο) Τα δεδομένα διάταξης ενότητας που θα αποθηκευτούν στο μοντέλο σελίδας.
απόρριψη

Επιτρέπει στη λειτουργική μονάδα επεξεργασίας να αποδεσμεύσει μνήμη, να αποδεσμεύσει συμβάντα και πόρους που συσχετίζονται με παράγοντες χειρισμού επεξεργασίας.

Αυτό το API καλείται όταν η διάταξη ενότητας πρέπει να αποσυρθεί τελείως, όπως στην περίπτωση μιας λειτουργίας Αναίρεσης/Επανάληψης.

Καμία. Ενεργοποιείται η απόσυρση της διάταξης ενότητας.