Schnelles Deployment in CQ mit den Sling IDE Tools

An der AdaptTo() 2013 wurde das erste Mal über die neuen Sling IDE Tools berichtet. Der Vortrag von Robert Munteanu gab einen guten Einblick über den aktuellen Stand und die Vision dahinter. In diesen Blogbeitrag berichte ich von den ersten Erfahrungen bei der CQ Entwicklung mit den Sling IDE Tools.

Die Sling IDE Tools sollen die Entwicklungsprozesse verbessern und im ersten Schritt das inkrementelle Deployment während der Entwicklung beschleunigen. Die Sling IDE Tools sind im Moment nur für Eclipse verfügbar, aber weitere Entwicklungsumgebungen sind später denkbar.

(mehr …)

Varnish Präsentation an adaptTo() 2013

An der adaptTo() 2013 habe ich für Namics einen Vortrag über das Thema Caching mit Varnish im Umfeld von CQ5 gehalten.

Die Inhalte:

  • Einleitung zu Varnish
  • Anwendungsfälle und mögliche Architekturen
  • Einschränkungen und Stolperfallen

Bei den Anwendungsfällen wurden drei Beispiele beschrieben, welche nachfolgend kurz erläutert werden.

(mehr …)

Pathmarks – Kleines Helferlein für AEM/CQ mit Google Chrome

Der Adobe Experience Manager (AEM) respektive CQ ist ein mächtiges System. Entsprechend vielfältig sind die Funktionen und alle sind irgendwie über URL-Pfade erreichbar. Wer mit AEM respektive CQ entwickelt oder mehrere Instanzen und Umgebungen (Produktion, Test, Integration, Entwicklung etc.) betreut, ruft daher auf den jeweiligen Systeme immer mal wieder dieselben Pfade auf. Die Hostnames (und/oder Ports) ändern sich natürlich, die Pfade bleiben aber dieselben. Einige Pfade sind irgendwann im Gedächtnis präsent, von einigen ist bekannt, wo im System ein Link darauf vorhanden ist und bei anderen, wo in der Dokumentation der gewünschte Pfad zu finden sein könnte. Es gibt aber immer auch mal die Situation, wo auf einem System das Ziel bekannt ist, der Weg allerdings neu gesucht werden muss.

Mit der Google Chrome Extension Pathmarks gibt es ein praktisches Helferlein, welches diese Suche nach dem gewünschten Pfad stark erleichtert. Anstelle eines klassischen Bookmarks speichert die Erweiterung nur die Pfade. Egal in welcher AEM oder CQ Umgebung – mit einem Klick auf den gespeicherten Pfad wird die Zielseite in der aktuellen Umgebung geöffnet.

Der aktuelle Pfad einer geöffneten Seite lässt sich mit der Erweiterung direkt speichern und zuvor auch editieren. Die einzelnen Einträge lassen sich per Drag-and-Drop umsortieren. Über die Options-Seite der Erweiterung stehen die gespeicherten Pfade ausserdem im JSON-Format zur Verfügung. Die Einstellungen können so einfach zwischen Entwicklern ausgetauscht werden. Über die Tastatur lässt sich schnell zwischen den Pfaden navigieren und den gewünschten auswählen.

Natürlich eignet sich diese Extension für Google Chrome auch für beliebige andere, web-basierte Systeme.

Pathmarks im Chrome Web Store

Suchtiefe der AEM CQ Volltext-Suche bei Seiten-Inhalten

Die integrierte Volltextsuche von AEM CQ nach Seiten (cq:Page respektive cq:PageContent) besitzt eine wenig bekannte Einschränkung. Die Suche findet nur auf vier Node-Ebenen innerhalb des PageContent-Nodes (jcr:content) statt.

Diese Einschränkung fällt oft nicht auf, da eher selten eine tiefere Node-Struktur anzutreffen ist. Es gibt aber Fälle, wo komplexe Komponenten tiefere Strukturen aufweisen und die Inhalte dann mit der Volltextsuche nicht mehr gefunden werden. Beim Testen ist die Wahrscheinlichkeit eher klein diesen Fall zu erkennen. Daher ist es wichtig diese Einschränkung zu kennen und in der Entwicklung bei der Verwendung tieferer Node-Strukturen zu beachten. (mehr …)

Performance Verbesserung von JCR Queries

Die Optimierung von Suchen gegen das JCR kann erhebliche Geschwindigkeitsvorteile bringen. Ein Hilfsmittel ist hier das QueryStat MBean, welches in der Standard JMX Console zu finden ist.  Dort sind langsame und populäre Queries schnell ersichtlich. Beispiel-Link: http://localhost:8081/system/console/jmx/com.adobe.granite%3Atype%3DQueryStat

(mehr …)

Adobe CQ 5.6 – Social Communities Login

Jeder kennt das leidige Problem: um Site xy.com richtig nutzen zu können muss man sich dort registrieren. Sei es nur um einen Kommentar zu hinterlassen, oder um eine Commerce-Transaktion durchzuführen. Password-Hell vorprogrammiert!

Seit einiger Zeit wird das Problem jedoch durch Facebook, Twitter und Google entschärft. ‘Connect’ heisst das Zauberwort. Die dahinter versteckte Technologie entweder OpenID oder OAuth.

CQ56 Social Login

Adobe CQ 5.6 unterstützt Facebook Connect (Sign in with Facebook) und Twitter Connect (Sign in with Twitter) nun out-of-the-Box. Als Beispiel hat der Geometrixx Outdoors Commerce-Showcase nun diese Möglichkeit zur Authentisierung erhalten. Statt mich mit Benutzername und Passwort zu registrieren, kann man nun eine der beiden oben genannten Möglichkeiten zur Profil-/Account-Erstellung nutzen.

Entsprechend werden anschliessend teilweise Daten aus Facebook oder Twitter an CQ übergeben, und in mein Geometrixx Profil übertragen. Email Adresse, Avatar und mein Name stehen sofort zur Verfügung. Ergebnis ist ein vollwertiger Benutzeraccount innerhalb von CQ der anschliessend durch den Benutzer selbstverständlich erweitert werden kann.

CQ56 User Manager

Aber bei der Account-Erstellung bleibt es nicht. Durch das Social Login steht der CQ-Site nun auch mein Social Graph zur Verfügung, und hier sind der Phantasie keine Grenzen gesetzt. Produktempfehlungen meiner Freunde können so implementiert werden oder die Informationen aus meinem Graph werden für weitere Targeting Funktionen genutzt.

Neben einer eigener Profilverwaltung können zukünftig also Adobe CQ Sites auch auf die Vorteile der grossen Social Networks zurückgreifen und bieten so für den Benutzer durch das Social Communities Login einen grossen Mehrwert, egal ob Community, Corporate Website oder Commerce Site.

Ebenfalls neu in Adobe CQ 5.6:

Erster Blick auf Launches in Adobe CQ 5.6

Adobe wird in CQ 5.6 die neue Funktion Launches zur Verfügung stellen. Mit Launches können mehrere Versionen von Seiten oder ganzen Bereichen parallel bearbeitet und später veröffentlicht werden. Im Februar kann beispielsweise bereits an einem Frühlings- und Sommer-Launch einer bestimmten Seite gearbeitet werden. An der aktuellen Winter-Version können weiterhin Anpassungen gemacht und live geschaltet werden.

Erster Blick auf Launches

Namics konnte im Rahmen des Adobe CQ 5.6 Beta Programmes einen ersten Blick auf Launches werfen. Ein neuer Launch kann im Siteadmin erstellt werden. Beim Erstellen ist definierbar, ob eine Seite, oder ein ganzer Seiten-Bereich für den neuen Launch verwendet wird. Technisch ist ein Launch eine Kopie der Original-Seite (angelegt unter /content/launches). Ein Launch kann wahlweise als Live-Copy konfiguriert werden und damit sind auch Funktionen des Multi-Site-Managers nutzbar.

Eine Launch-Version wird wie eine normale Seite bearbeitet. Im Sidekick kann zur gewünschten Launch-Version gewechselt werden. Über die neue Funktion Promote Launch wird eine bestimmte Launch-Seite veröffentlicht.

Für die Administration der Launches steht in CQ 5.6 zudem eine neue Oberfläche (aufrufbar über /libs/launches/content/admin.html) zur Verfügung. Damit können bestehende Launches konfiguriert und auch wieder gelöscht werden.

Launches in bestehenden Projekten?

Wir haben uns gefragt, ob sich Launches auch bei einem Update von einer älteren CQ-Version auf CQ 5.6 verwenden lassen? Dies ist grundsätzlich möglich, hängt aber jeweils auch vom entsprechenden Projekt ab. Damit sich die Launches verwenden lassen, benötigt eine Page den cq:infoProvider für Lauches. Im entsprechenden Node launches wird eine Property className mit dem Wert com.adobe.cq.wcm.launches.impl.LaunchesInfoProvider benötigt. Je nach Projekt-Setup muss dies im Projekt-Code oder via CRX DE konfiguriert werden. Anschliessend können Launches verwendet werden.

Bei bestehenden Projekten muss zudem berücksichtigt werden, dass die Launch-Version im Pfad /content/launches als Kopie des Originals abgelegt wird. Automatisch generierte Bereiche, wie beispielsweise eine Navigation können je nach Umsetzung daher im Launch nicht sichtbar sein.

Fazit

Launches ist eine sehr interessante neue Funktion von Adobe CQ 5.6, welche für die Content-Pflege grosse Vorteile mit sich bringt. Wir können uns vorstellen, dass gerade auch kritische Veröffentlichungen (beispielsweise von Geschäftszahlen) davon profitieren können. Die Integration in bestehende Projekte im Rahmens eines Updates wird auch möglich sein und wir sind gespannt auf den ersten Einsatz in der Praxis.

Weitere Artikel zu Adobe CQ 5.6 Beta: Adobe CQ 5.6 Commerce – Einkaufen mit CQ

Adobe CQ 5.6 Commerce – Einkaufen mit CQ

In Adobe CQ 5.6  wird die E-Commerce Funktionalität, die in CQ 5.5 eingeführt worden ist, gezielt weiter entwickelt und optimiert. Insbesondere die Integration von Commerce-Software, wie zum Beispiel Hybris, wurde verbessert.

Im Rahmen des Beta-Programmes für CQ 5.6 hatten wir die Möglichkeit die neueste Commerce-Funktionalität zu erforschen.

Commerce-Funktionalität

Die mitgelieferte Beispiel-Shop-Website Geometrixx Outdoor zeigt, wie sich die Commerce-Funktionalität nahtlos in einen CQ-Webauftritt integrieren lässt. Die Shop-Website lässt sich über das CQ-Autoren-Interface wie eine normale Website pflegen. Dazu stehen die folgenden Commerce-Komponenten im gewohnten Baukastensystem von CQ zur Verfügung:

  • Produkt-Navigation/Produkt Listen: Erlauben eine einfache Navigation durch den Produktkatalog
  • Produkt-Detail: Zeigt die Detailansicht eines Produktes und erlaubt die Konfiguration (beispielsweise Auswahl von Grösse und Farbe)
  • Produkt-Suche: Suche, Filter und Darstellung der Resultatliste
  • Produkt-Abhängigkeiten: Beispielsweise für Cross-Selling und Empfehlungen
  • Warenkorb-Komponente: Darstellung des Warenkorbes
  • Checkout-Komponente: Dynamische-Formulare für den Checkout-Prozess
 

E-Commerce Integration Framework

Das E-Commerce Integration Framework erlaubt die Verwendung von verschiedenen Commerce-Implementierungen, auch Commerce Provider genannt. Für Hybris steht bereits eine Commerce Provider Implementierung zur Verfügung (www.adobe.com/go/hybris). Mit dieser lassen sich Hybris Produkt- und Commerce-Funktionalität in CQ integrieren. Die Stärken beider Systeme können so zu einer optimalen Lösung kombiniert werden.

Die CQ-Plattform wird für folgendes eingesetzt:

  • Darstellung von Produkt-Listen und Informationen
  • Darstellung des Warenkorbes und der Checkout-Formulare
  • Pflege der Marketing-Informationen
  • Suchmachinen-Optimierung
  • Community- und Social-Media-Funktionalität

Die Hybris-Plattform wird für folgendes verwendet:

  • Pflege der Produktdaten
  • Produkt-Suche
  • Speicherung des Warenkorbes
  • Bestellprozess
  • Auftragsabwicklung

Produktdaten und Kataloge

Bei den Produktdaten wird eine klare Trennung gemacht. Einerseits gibt es die Produkt-Content-Daten, wie beispielsweise Produkt-Nummer, Produkt-Bilder, Kategorien oder Beschreibungen. Diese Daten werden zentral im CRX (/etc/commerce/products) abgelegt oder über eine Schnittstelle synchronisiert. Andererseits gibt es dynamische Produktdaten wie beispielsweise Preise oder Lagerbestände. Diese Informationen können in Echtzeit direkt vom Commerce-Provider (wie zum Beispiel Hybris) über Webservices bezogen werden.

Im Bereich der «Catalog Blueprints» können verschiedene Kataloge gepflegt werden. Diese formen die Basis für den Produkte-Bereich einer Website. Sie werden über logische Kopien (“Live Copy”) in der Desktop- oder Mobile-Website integriert. In der Website können die Produktinformationen um Marketinginformation erweitert werden. So lässt sich zum Beispiel ein Video oder ein Kampagnen-Teaser hinzufügen. Mit CQs Internationalisierungs-Funktionen lassen sich auf einfache Art länder- und sprachspezifische E-Business-Websites aufbauen.

Benutzer-Daten 

Das Benutzer-Konto setzt auf dem Standard-CQ-Benutzerprofil auf. Die Benutzer-Daten lassen sich mit dem Commerce-Provider synchronisieren. Dies erlaubt den Einsatz von sämtlichen Marketing-Tools die CQ bietet:

  • Marketing Campaign Management: Um gezielt personalisierten Content auszuliefern
  • Closed User Groups: Für das zur Verfügung stellen von geschützte Informationen
  • Social Collaboration: Für Produkt-Bewertungen und Kommentaren und Bildung von Communities
  • Social Media Integration: Posting von Produkt-Daten nach Facebook, Login mit einem Facebook- oder Twitter-Account

 

Fazit

Das Commerce-Framework in CQ 5.6 bietet gute Basis-Komponenten für die Implementierung einer E-Commerce-Plattform in einer Website. Die Integration von Enterprise-Commerce-Produkte wie Hybris machen es möglich eine unschlagbare internationale E-Commerce-Plattform aufzubauen.