Show Menu
TOPICS×

Sviluppo di componenti core

When to Use the Core Components?

Poiché i componenti core sono completamente nuovi e offrono molteplici vantaggi, si consiglia di utilizzarli nei nuovi progetti AEM. Per i progetti esistenti, la migrazione dei componenti dovrà essere eseguita nell’ambito di un’attività più ampia, ad esempio in occasione di un progetto di rebranding o riformattazione generale.
Di conseguenza, Adobe fornisce le seguenti raccomandazioni:
  • Nuovi progetti
    I nuovi progetti devono sempre tentare di utilizzare i componenti core. Se i componenti core non possono essere utilizzati direttamente o estesi per soddisfare i requisiti del progetto, create un componente personalizzato seguendo l’architettura dei componenti impostata nei componenti core. Eccetto dove non altrimenti possibile, evitare di utilizzare i componenti Supporto dei componenti di base (“foundation”) di base.
  • La
    raccomandazione progetti esistenti viene mantenuta utilizzando i componenti di base, a meno che non sia pianificato il refactoring di un sito o di un componente. Poiché sono ampiamente utilizzati dalla maggior parte dei progetti esistenti, i componenti di base continueranno ad essere sostenuti.
  • Nuovi componenti
    personalizzati Se è possibile personalizzare un componente core esistente. In caso contrario, si consiglia di creare un nuovo componente personalizzato seguendo le linee guida sui componenti.
  • Componenti
    personalizzati esistenti Se i componenti funzionano come previsto, mantenerli come sono. In caso contrario, fare riferimento a "Nuovi componenti personalizzati" sopra.

Come ottenere successo con i componenti core

I componenti core sono potenti, flessibili e facili da usare e personalizzare. Seguendo alcune linee guida chiave, il progetto con i componenti core avrà successo.

Migrazione ai componenti core

Eventuali nuovi progetti devono essere implementati con i componenti core. Tuttavia, i progetti esistenti avranno in genere ampie implementazioni dei componenti di base.
Uno sforzo maggiore su un progetto esistente (ad esempio un rebranding o un refactoring complessivo) spesso offre la possibilità di eseguire la migrazione ai componenti core. Per facilitare questa migrazione, Adobe ha fornito una serie di strumenti di migrazione per incoraggiare l'adozione dei componenti core e della più recente tecnologia AEM.
Gli strumenti di modernizzazione AEM consentono di convertire facilmente:
  • Modelli statici in modelli modificabili
  • Configurazioni di progettazione in policy
  • Componenti di base in componenti core
  • Interfaccia classica in interfaccia touch
Per ulteriori informazioni sull’utilizzo di questi strumenti, consulta la relativa documentazione .
Gli strumenti AEM Modernize sono uno sforzo della community e non sono supportati o giustificati da Adobe.

Supporto dei componenti core

I componenti core sono parte integrante di AEM e sono supportati così come sono. Sono soggetti agli stessi termini e condizioni dei prodotti forniti con Quickstart.
Come per le altre funzioni del prodotto AEM, la regola generale è: I componenti vengono inizialmente dichiarati obsoleti e i primi rimossi per la seguente release di AEM. Questo consente ai clienti di passare alla nuova versione del componente almeno un ciclo di rilascio prima di lasciarne indietro il supporto.
La versione di ogni componente indica chiaramente le versioni di AEM che supporta. Quando cessa il supporto per una versione di AEM, cessa anche il supporto dei componenti core per tale versione di AEM.
Per informazioni dettagliate sul supporto delle personalizzazioni dei componenti, consultate la pagina Personalizzazione dei componenti core.

Funzionalità tecniche

La tabella seguente fornisce una panoramica delle differenze tra i componenti core e i componenti di base.
Per informazioni dettagliate sulle funzionalità di authoring e sulle opzioni per la preconfigurazione, consultare la pagina dedicata all’authoring.
Funzionalità
Componente core
Componente Foundation
Implementazione logica
Java POJO con annotazioni Sling Models
Codice JSP
Definizione di markup
Codice JSP
Scarico XSS
Automatizzato da HTL
Principalmente manuale
Denominazione delle classi CSS
Convenzione di denominazione standard basata sulla notazione del modificatore di elementi di blocco (BEM) (a partire dalla release 2.0.0)
Schemi personalizzati
Definizione finestra di dialogo
Corallo 2 + Interfaccia classica
Uscita JSON
Servlet Sling predefinito
Gestione versioni
Nessuno
Test
Prove di unità + Test di integrazione
Test di integrazione
Consegna
Via Quickstart
Licenza
Proprietà Adobe
Contributo
Tramite richiesta pull
Impossibile
Accessibilità
Completamente conforme allo standard # WCAG 2.0 AA (https://docs.adobe.com/content/help/en/experience-manager-cloud-service/sites/authoring/fundamentals/accessible-content.html)
Solo parzialmente conforme allo standard WCAG 2.0 AA

Elenco componenti

Nella tabella seguente sono elencati i componenti core disponibili, che si collegano all'API e indicano quali componenti di base sostituire.
Componente core
Descrizione
Componenti di base sostituiti
Pagina reattiva che funziona con l’editor modelli
/libs/foundation/components/page /libs/wcm/foundation/components/page
Navigazione gerarchica delle pagine
/libs/foundation/components/breadcrumb
Titolo H1-H6
/libs/foundation/components/title /libs/wcm/foundation/components/title
RTF
/libs/foundation/components/text /libs/foundation/components/table /libs/wcm/foundation/components/text
Caricamento intelligente e pigro delle dimensioni di rappresentazione ottimali
/libs/foundation/components/image /libs/foundation/components/adaptiveimage /libs/foundation/components/logo /libs/foundation/components/mobileimage /libs/foundation/components/mobilelogo /libs/wcm/foundation/components/image
Elenco di pagine
/libs/foundation/components/list /libs/foundation/components/mobilelist /libs/wcm/foundation/components/list
widget di condivisione Facebook e Pinterest
-
Sistema paragrafo modulo reattivo
/libs/foundation/components/form/start /libs/foundation/components/form/end
Campo di immissione testo
/libs/foundation/components/form/text /libs/foundation/components/form/password
Campo di immissione opzioni multiple
/libs/foundation/components/form/checkbox /libs/foundation/components/form/radio /libs/foundation/components/form/dropdown
Campo di input nascosto
/libs/foundation/components/form/hidden
Pulsante Invia o personalizzato
/libs/foundation/components/form/submit
Un componente di navigazione del sito che elenca la gerarchia di pagine nidificata
/libs/foundation/components/topnav /libs/foundation/components/mobiletopnav
Uno switcher di lingua e Paese che elenca la struttura globale della lingua
-
Componente di ricerca che visualizza i risultati come suggerimenti inseriti in un menu a discesa
/libs/foundation/components/search
Consente all’autore del contenuto di creare facilmente un teaser per l’ulteriore contenuto utilizzando un’immagine, un titolo o un RTF e collegando altri contenuti o altre azioni
-
Consente all’autore del contenuto di organizzare il contenuto della pagina all’interno di più schede
-
Consente all’autore del contenuto di organizzare il contenuto in un carosello rotante di diapositive
/libs/foundation/components/carousel
Consente la visualizzazione di un frammento di contenuto
-
Consente di visualizzare un elenco dei frammenti di contenuto
-
Separa il contenuto di una pagina
-
Organizzare i pannelli dei contenuti in un ambiente comprimibile
-
Organizzare i componenti all’interno di un contenitore
-
Creare un pulsante su una pagina
-
Aggiunta di una risorsa scaricabile a una pagina
-
Aggiunta di un frammento esperienza a una pagina
/libs/cq/experience-fragments/editor/components/experiencefragment
Incorporare una risorsa esterna in una pagina
-
Fornire una rappresentazione visiva del progresso verso un obiettivo
-
Presenta un documento PDF su una pagina
-

Componenti in arrivo

Per una panoramica della road map dei componenti core, consulta il progetto wiki su GitHub .

Aggiornamento dei componenti core

Un vantaggio dei componenti con versione è rappresentato dal fatto che consente di separare la migrazione a una nuova versione di AEM dalla migrazione alle nuove versioni dei componenti. Inoltre, se sono disponibili nuove versioni di componenti, è possibile migrare singolarmente ogni componente alla nuova versione.
Le migrazioni a una nuova versione di AEM non avranno alcun impatto sul funzionamento dei componenti core, a condizione che le loro versioni supportino anche la nuova versione di AEM in cui viene eseguita la migrazione. Le personalizzazioni effettuate sui componenti core non devono essere influenzate, a condizione che non utilizzino API che sono state obsolete o rimosse .
Le migrazioni a nuove versioni dei componenti core non influiranno neanche sul funzionamento del componente, ma potrebbero essere introdotte nuove funzionalità agli autori di pagine, che potrebbero richiedere alcune configurazioni da parte di un editor modelli, nel caso in cui il comportamento predefinito non sia desiderato. Potrebbe tuttavia essere necessario adattare le personalizzazioni, per ulteriori dettagli consultate la pagina Personalizzazione dei componenti core.