Frage

Wie kann ich eine benutzerdefinierte Widgetkundenbibliothek erstellen, die ein neue oder geänderte WCM-Funktionalität bietet?

Antwort, Auflösung

CQ5 bietet eine Schnittstelle, um der WCM-Autorenschnittstelle durch das Ext.JS-Framework neue JavaScript-Funktionen hinzuzufügen. Diese sogenannten Kundenbibliotheken bieten Folgendes:

  • benutzerdefinierte Funktionen hinzufügen oder
  • bestehende Funktionen überschreiben und erweitern

Benutzerdefinierte Kundenbibliothek erstellen

In den nächsten Schritten wird beschrieben, was zum Erstellen einer benutzerdefinierten Kundenbibliothek erforderlich ist.

  • Gehen Sie auf CRXDE Lite (z. B. http://<host>:<port>/crxde)
  • Legen Sie einen Knoten vom Typ cq:ClientLibraryFolder an, z.B.
    • /apps/myapp/ui/mylib
  • Setzen der String-Eigenschaft sling:resourceType auf widgets/clientlib
  • Setzen (mehrwertig) der Eigenschaft Kategorien auf eine oder mehrere der folgenden Eigenschaften

Kategorienname Beschreibung
cq.wcm.admin Site Admin und Werkzeuge
cq.wcm.edit Seite ContentFinder und bearbeiten
cq.dam.admin DAM Admin
cq.dam.edit DAM AssetShare, AssetEditor

  • Bei Bedarf (mehrwertig) String-Eigenschaft Abhängigkeiten zu anderen Client-Bibliotheken im System setzen
  • Alle Änderungen speichern

Überlagern/Hinzufügen von Widgets

  • Erstellen Sie einen Ordner source unterhalb des Client-Lib-Knotens, z.B.
    • /apps/myapp/ui/mylib/source
  • Erstellen Sie für jede JS-Klasse und jedes Widget eine Datei, z.B.
    • /apps/myapp/ui/mylib/source/MyWidget.js
    • /apps/myapp/ui/mylib/source/override/ComponentList.js
  • Erstellen Sie eine Datei js.txt, um oben erstellte Dateien in die benutzerdefinierte Client-Lib aufzunehmen:
#base=source MyWidget.js override/ComponentList.js 

  • Alle Änderungen speichern

CQ5 beobachtet automatisch Änderungen an einer Client-Bibliothek im Repository und registriert diese Bibliothek zur späteren Verwendung in der entsprechenden Kategorie, z.B. beim Bearbeiten einer Seite. Beigefügt ist ein Beispiel für ein CQ-Inhaltspaket, das die folgenden Schritte durchführt:

  • Eigene Client-Bibliothek hinzufügen /apps/myapp/ui/mylib
  • Kategorie cq.wcm.edit
  • Defaultwerte der Komponentenliste im SideKick überschreiben
    • Standardmäßige maximale Anzahl der anzuzeigenden Gruppen
    • Für eine Gruppe erforderliche Mindestanzahl von Komponenten

Gilt für

CQ5.x

Herunterladen

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie