Pregunta

¿Es posible crear una biblioteca cliente de widgets personalizada que proporcione funciones de WCM nuevas o modificadas?

Respuesta y resolución

CQ5 proporciona una interfaz para añadir nuevas funciones JavaScript a la interfaz de creación de WCM a través del marco de trabajo Ext.JS. Las llamadas bibliotecas cliente ofrecen lo siguiente:

  • añadir funcionalidad personalizada o
  • anular y ampliar las funciones existentes

Crear una biblioteca cliente personalizada

Los siguientes pasos describen lo que se requiere para construir una biblioteca personalizada para el cliente.

  • Vaya a CRXDE Lite (por ejemplo, http://<host>:<port>/crxde)
  • Cree un nodo con el tipo cq:ClientLibraryFolder, por ejemplo
    • /apps/myapp/ui/mylib
  • establecer la propiedad String sling:resourceType en widgets/clientlib
  • establecer categorías de propiedad (de varios valores) en una o más de las siguientes

Nombre de categoría Descripción
cq.wcm.admin SiteAdmin y Herramientas
cq.wcm.edit ContentFinder y editar página
cq.dam.admin Administración de DAM
cq.dam.edit DAM AssetShare, AssetEditor

  • si es necesario, establecer dependencias de propiedad String (de varios valores) a otras bibliotecas de mandante en el sistema
  • guardar todos los cambios

Superposición / Adición de widgets

  • Cree una carpeta de origen debajo del nodo cliente-libero, por ejemplo
    • /apps/myapp/ui/mylib/source
  • Cree un archivo para cada clase JS y sobreescritura de widgets, por ejemplo
    • /apps/myapp/ui/mylib/source/MyWidget.js
    • /apps/myapp/ui/mylib/source/override/ComponentList.js
  • Cree un archivo js.txt para incluir los archivos creados anteriormente en la carátula de cliente personalizada:
#base=fuente MyWidget.js override/ComponentList.js 

  • guardar todos los cambios

CQ5 observa automáticamente los cambios en una biblioteca cliente en el repositorio y vuelve a registrar esta biblioteca para su uso posterior en la categoría correspondiente, por ejemplo, al editar una página. Se adjunta un paquete de contenido CQ de ejemplo que hace lo siguiente:

  • añadir biblioteca cliente personalizada /apps/myapp/ui/mylib
  • categoría cq.wcm.edit
  • sobrescribir los valores propuestos de la lista de componentes en el SideKick
    • número máximo predeterminado de grupos de componentes que se mostrarán
    • número mínimo predeterminado de componentes necesarios para un grupo

Se aplica a

CQ5.X

Descargar