Problema

Il modo in cui i componenti sono elencati nel sidekick non è sempre soddisfacente e quindi vorrei avere il controllo su di essi.

Risoluzione

Dalla versione 5.3, l'elenco dei componenti consentiti viene calcolato solo sul client.

Ad ogni componente lato client viene anche assegnato un percorso di ricerca delle celle ed eventualmente un CQ.wcm.Cell.
L'array di componenti permessi è tenuto in una classe CQ.wcm.ComponentList di cui è presente un'istanza per pagina.
Le finestre di dialogo di inserimento e il sidekick ottengono l'elenco finale dei componenti di quell'oggetto.
Prima che l'oggetto lista componenti venga aggiornato con l'elenco dei componenti consentiti del contenuto modificabile, si attiva un evento "updatecomponentlist", che puoi utilizzare per intercettare e modificare dinamicamente l'elenco.
Puoi registrare il listener "updatecomponentlist" usando i listener normali editConfig sul componente contenitore (per esempio parsys):

/** * Viene chiamato prima dell'aggiornamento di {CQ.wcm.wcm.ComponentList}. * @parametro this {CQ.wcm.EditBase} questo contenuto modificabile * @parametro cell {CQ.wcm.Cell} la cella di questo contenuto modificabile * @parametro alowed {Array} la lista preliminare dei componenti consentiti * @parametro componentList {CQ.wcm.ComponentList} l'oggetto lista componenti che riceverà la lista */ funzione MyHandler(cell, allowed, componentList) { // manipolare l'array 'allowed' se necessario } 

Nota che le manipolazioni "runtime" dell'elenco dei componenti non sono attualmente supportate. Ciò significa che, se l'elenco dei componenti consentiti dipende dai cambiamenti lato client, non puoi propagarlo nelle finestre di dialogo.

Si applica a

CQ 5.3

Questo prodotto è concesso in licenza in base alla licenza di Attribuzione-Non commerciale-Condividi allo stesso modo 3.0 Unported di Creative Commons.  I post su Twitter™ e Facebook non sono coperti dai termini di Creative Commons.

Note legali   |   Informativa sulla privacy online