Utilizzo di Nascondi condizioni using-hide-conditions

CAUTION
AEM 6.4 ha raggiunto la fine del supporto esteso e questa documentazione non viene più aggiornata. Per maggiori dettagli, consulta la nostra periodi di assistenza tecnica. Trova le versioni supportate qui.

È possibile utilizzare le condizioni Nascondi per determinare se è stato eseguito o meno il rendering di una risorsa componente. Un esempio è quello di un autore di modelli che configura il componente core componente elenco in editor modelli decide di disabilitare le opzioni per creare l’elenco in base alle pagine figlie. Se si disabilita questa opzione nella finestra di dialogo di progettazione, viene impostata una proprietà in modo che quando si esegue il rendering del componente elenco, venga valutata la condizione Nascondi e l’opzione per mostrare le pagine figlie non venga visualizzata.

Panoramica overview

Le finestre di dialogo possono diventare molto complesse con numerose opzioni per l'utente, che possono utilizzare solo una frazione delle opzioni che sono a sua disposizione. Questo può portare a esperienze di interfaccia utente travolgenti per gli utenti.

Utilizzando le condizioni di visualizzazione, gli amministratori, gli sviluppatori e i super utenti possono nascondere le risorse in base a un set di regole. Questa funzione consente di decidere quali risorse visualizzare quando un autore modifica il contenuto.

NOTE
Nascondere una risorsa basata su un'espressione non sostituisce le autorizzazioni ACL. Il contenuto rimane modificabile, ma semplicemente non viene visualizzato.

Implementazione e dettagli di utilizzo implementation-and-usage-details

com.adobe.granite.ui.components.FilteringResourceWrapper è responsabile del filtraggio delle risorse in base all'esistenza e al valore del granite:hide proprietà, situata nel campo da filtrare. L'attuazione /libs/cq/gui/components/authoring/dialog/dialog.jsp include un'istanza di FilteringResourceWrapper.

L'implementazione utilizza la Granite API ELResolver e aggiunge un cqDesign variabile personalizzata tramite ExpressionCustomizer.

Di seguito sono riportati alcuni esempi di condizioni nascoste su un nodo di progettazione situato in etc/design o come criterio dei contenuti.

${cqDesign.myProperty}
${!cqDesign.myProperty}
${cqDesign.myProperty == 'someText'}
${cqDesign.myProperty != 'someText'}
${cqDesign.myProperty == true}
${cqDesign.myProperty == true}
${cqDesign.property1 == 'someText' && cqDesign.property2 || cqDesign.property3 != 1 || header.myHeader}

Quando definisci l’espressione nascondi , tieni presente quanto segue:

  • Per essere valido, l'ambito in cui viene trovato il bene deve essere espresso (ad es. cqDesign.myProperty).
  • I valori sono di sola lettura.
  • Le funzioni (se necessarie) devono essere limitate a un determinato set fornito dal servizio.

Esempio example

Esempi di condizioni di nascondere possono essere trovati in tutto AEM e componenti core in particolare. Ad esempio, considera il elenco dei componenti core.

Utilizzo dell’editor modelli, l’autore del modello può definire nella finestra di dialogo della progettazione quali opzioni del componente elenco sono disponibili per l’autore della pagina. Ad esempio, se consentire o meno che l’elenco sia un elenco statico, un elenco di pagine figlie, un elenco di pagine con tag e così via. possono essere abilitate o disabilitate.

Se un autore del modello sceglie di disabilitare l’opzione pagine figlie, viene impostata una proprietà di progettazione e viene valutata una condizione di nascondere, in modo che l’opzione non venga renderizzata per l’autore della pagina.

  1. Per impostazione predefinita, l’autore della pagina può utilizzare il componente di base elenco per creare un elenco utilizzando pagine figlie, scegliendo l’opzione . Pagine figlie.

    chlimage_1-218

  2. Nella finestra di dialogo di progettazione del componente di base elenco, l’autore del modello può scegliere l’opzione Disattiva bambini per evitare che l’opzione generi un elenco basato su pagine figlie venga mostrata all’autore della pagina.

    chlimage_1-219

  3. Un nodo di criteri viene creato in /conf/we-retail/settings/wcm/policies/weretail/components/content/list con una proprietà disableChildren impostato su true.

  4. La condizione Nascondi è definita come valore di un granite:hide sul nodo della proprietà dialog /conf/we-retail/settings/wcm/policies/weretail/components/content/list

    chlimage_1-220

  5. Il valore di disableChildren viene estratto dalla configurazione di progettazione e dall’espressione ${cqDesign.disableChildren} valuta false, il che significa che non viene eseguito il rendering dell’opzione come parte del componente.

    È possibile visualizzare l’espressione hide come valore del granite:hide property in GitHub.

  6. Opzione Pagine figlie non viene più eseguito il rendering per l’autore della pagina quando si utilizza il componente elenco .

    chlimage_1-221

recommendation-more-help
2315f3f5-cb4a-4530-9999-30c8319c520e