Eseguire il rendering degli elementi di contenuto

I layout di contenuto vengono utilizzati per eseguire il rendering degli elementi di contenuto. Ricevono i dati degli elementi di contenuto, ne eseguono il rendering in HTML e li inseriscono nella pagina.

Per impostazione predefinita, i layout di contenuto sfruttano i modelli Mustache per eseguire il rendering degli elementi di contenuto, anche se possono essere implementati in qualsiasi tecnologia JavaScript. Per il rendering del modello Mustache, i dati devono avere un determinato formato. Il file render.js del layout di contenuto deve garantire che i dati passati al modello corrispondano a tale formato.

Il rendering dei layout del contenuto viene eseguito in vari casi d'uso:

  • quando vengono utilizzati nell'interfaccia utente di gestione degli asset di Oracle Content Management, i dati possono avere uno stato "modificato" per l'utente per visualizzare in anteprima le modifiche prima di salvarle;

  • quando vengono utilizzati in un sito Oracle Content Management in una lista di contenuti o in un elemento di contenuto, i dati vengono incrementati con informazioni aggiuntive sul sito in cui sono in esecuzione;

  • quando vengono utilizzati tramite la chiamata contentClient.renderLayout() di Content SDK, in cui l'utente del kit passa i dati desiderati direttamente al layout di contenuto.

Per migliorare le prestazioni, esiste un compromesso generale tra la creazione di una singola query in grado di restituire tutti i dati necessari e la creazione di più query in modo che il rendering della struttura venga eseguito il più velocemente possibile, con una query iniziale rapida e il popolamento delle aree effettuato tramite query successive. Le modalità scelte dipendono dai dati e dai casi d'uso.

Inoltre, i dati passati a un layout di contenuto possono avere formati diversi a causa delle modalità adottate per recuperarli. Ad esempio, se si utilizza la sintassi REST di contenuto con un parametro expand, possono essere restituiti anche riferimenti di campo ad altri elementi di contenuto, sia individualmente che come gruppo. Se gli elementi di contenuto di riferimento non sono inclusi, sarà necessario effettuare chiamate REST aggiuntive.

Per gestire tutti i casi possibili, lo sviluppatore del layout di contenuto deve far prova di flessibilità per quanto riguarda il formato dei dati ricevuti. Inoltre, quando necessario, lo sviluppatore può recuperare tramite FETCH dati aggiuntivi e impostarne in modo forzato il formato previsto dal modello di rendering.