Software-Entwicklung

CMS Lösungen mit Sitecore

Wer oder was ist Sitecore? Sitecore ist ein Unternehmen, das sich auf Webentwicklung, Customer-Experience und Online-Marketing spezialisiert. Das Hauptprodukt ist die Sitecore Experience Platform (derzeit aktuelle Version: 8.1). Die Experience Platform fällt unter die Kategorie CMS (Content Management System) bzw. unterstützt WCM (Web Content Management) und basiert auf .NET Technologie.  ANECON ist Microsoft Goldpartner und versiert auf Microsoft Technologien. So wurden wir neugierig und nahmen auch Sitecore genauer unter die Lupe. Und ja die Plattform überzeugte uns, so dass wir mittlerweile eine Partnerschaft mit Sitecore pflegen und Kunden helfen, ihre Sitecore-Architekturen nach professionellen Software-Engineering-Aspekten zu überarbeiten und bei Neuentwicklungen zu unterstützen. Ich möchte Ihnen heute gerne die Kernaspekte von Sitecore näherbringen.

Website production process, business concept on blackboard

Die Sitecore Experience Platform 8.1

Die Sitecore Experience Platform hat – wie auch andere CMS – den Zweck, Personen mit wenig (bis gar keinen) Programmierkenntnissen die Möglichkeit zu bieten, Inhalte wie Texte, Bilder, Videos, usw. in eine Webseite einzupflegen, zu bearbeiten bzw. zu löschen. Auf der anderen Seite stehen die Entwickler, die die Seite erstellen und warten. Beide Personengruppen haben Zugriff auf dieses Backend.

Was unterscheidet die Experience Platform von anderen CMS? Im Folgenden werde ich auf die Kernfunktionen und Besonderheiten eingehen.

Um mit der Sitecore Experience Platform arbeiten zu können, muss eine Lizenz erworben werden (Partner von Sitecore bekommen diese zur Verfügung gestellt). Für die Installation werden mindestens ein MSSQL Server für das Anlegen der Datenbanken benötigt. Da mehrere Datenbanken bei der Installation der Experience Platform angelegt werden, können diese auch auf mehreren Servern verteilt werden, um das System den Anforderungen entsprechend skalieren zu können. Die Webseite einer installierten Sitecore-Instanz wird auf einem (oder mehreren) IIS Web Server gehostet.

Es ist auch das Hosten der Webseite auf Microsoft Azure (der Microsoft Cloud) möglich. Die Sitecore Experience Platform läuft auf .NET Basis. Somit wird für die Installation auch das .NET Framework in der richtigen Version benötigt.

Nach erfolgreicher Installation, kann eine Beispiel-Webseite sowie das Backend aufgerufen werden. Durch die Anmeldung mit Benutzername und Passwort gelangt man auf die Startseite, wo Editoren und Tools geöffnet werden können.

Sitecore Backend

Sitecore Backend

 

Ich möchte nun die drei wichtigsten Werkzeuge des Backends kurz vorstellen.

 

Der Experience Editor

Im Experience Editor haben berechtigte Benutzer die Möglichkeit Texte, Bilder, Überschriften, usw. ganz einfach durch einen WYSIWYG (What you see is what you get) Editor zu bearbeiten. Bearbeitbare Felder sind entsprechend gekennzeichnet.

Sitecore Experience-Editor

Sitecore Experience-Editor

Der Experience Editor besitzt eine Menüleiste in der mehrere Funktionen einstellbar sind. Es kann zwischen dem Editieren von Content bzw. Inhalt und dem Editieren von Design bzw. Struktur gewählt werden.

 

Der Content Editor

Im Gegensatz zum Experience Editor hat man im Content Editor kein Abbild der tatsächlichen Webseite zur Verfügung, sondern die Inhalte der Webseite werden in einer Baumstruktur aufgelistet. Hier werden mehrere Details zu den Inhalten gezeigt. Daher ist der Content Editor auch mächtiger und für erfahrenere Mitarbeiter gedacht.

Sitecore Content-Editor

Sitecore Content-Editor

 

Sitecore Desktop:

Der Sitecore Desktop gleicht einem Windows Desktop. Von hier aus können, wie auch von der Startseite des Backends, alle Tools gestartet werden. Administratoren steht hier unter anderem die Benutzerverwaltung oder auch der Security Editor zur Verfügung.

Dieses Backend ist für alle Mitarbeiter, die die Webseite verwalten gedacht. Der Administrator kann hier über die Benutzerverwaltung den verschiedenen Personen Rechte auf die unterschiedlichen Werkzeuge geben. Nun möchte ich im nächsten Teil näher auf die Rolle des Entwicklers und die Möglichkeiten, die dieser mit der Sitecore Experience Platform hat, näher eingehen.

 

Webentwicklung mit der Sitecore Experience Platform

Die Sitecore Experience Platform basiert auf .NET Technologie. Webanwendungen, wie die eigene Firmenwebseite können daher mit Sitecore und ASP.NET entwickelt werden. Sowohl die Verwendung von ASP.NET Webforms als auch die modernere Technologie ASP.NET MVC ist für die Erstellung einer Webseite mit Sitecore möglich.

Sitecore passt somit perfekt in die Microsoft Welt und baut auf den Microsoft Technologie-Stack auf.

Als Entwicklungsumgebung empfiehlt sich das Microsoft Visual Studio. Um auch alle Sitecore spezifischen Entwicklungsschritte im Visual Studio durchführen zu können, wird von Sitecore ein Plugin namens Sitecore Rocks zur Verfügung gestellt.

Alle Sitecore Elemente werden als Items bezeichnet und werden in den Datenbanken abgelegt. Drei Datenbanken sind von besonderer Bedeutung:

  • Core Datenbank
  • Master Datenbank
  • Web Datenbank

In der Core Datenbank werden Einstellungen der Sitecore Instanz sowie Security Informationen abgelegt. Der eigentliche Inhalt der Webseite wird in der Master Datenbank erstellt und anschließend im Rahmen des Veröffentlichungsprozesses in die Web Datenbank publiziert. Besucher der Webseite greifen somit ausschließlich auf Inhalte der Web Datenbank zu.

Über Sitecore Rocks hat der Entwickler die Möglichkeit, auf Items der drei Datenbanken zuzugreifen. Daten werden in Form von Templates definiert. Diese sind hierarchisch aufgebaut und können mit Standardwerten befüllt werden.

Für die Darstellung und Anordnung der Inhalte auf der Webseite erstellt der Entwickler Layouts. Dazu können MVC Views erstellt werden. Alle MVC (oder auch Webforms) Elemente werden mit Definition Items (in diesem Fall Layout Definition Items) verknüpft. So werden die ASP.NET Komponenten mit den zugehörigen Items im Content Tree verbunden. Um Layouts zu verschachteln, können Platzhalter (Placeholder) platziert werden. Auf diesen Placeholdern werden andere Sublayouts platziert. So ist ein einfacher Aufbau einer Ansicht möglich.

Um nun Elemente im Experience Editor editierbar zu machen, stellt Sitecore eigene Controls zur Verfügung, die einfach im Programmcode verwendet werden können. Beispielsweise gibt es Controls für Text oder auch für ein Bild.

Sitecore Controls

Sitecore Controls

Sitecore kann sehr gut im Zusammenhang mit MVC verwendet werden. So können View Renderings oder Controller Renderings erstellt werden. View Renderings bestehen aus einer ASP.NET Datei – einer View – und einem Sitecore Definition Item. Die Views können ganz normal in Razor Syntax erstellt werden. Um mehr Logik hinzuzufügen, können Controller Renderings verwendet werden. Hier kommt ein normaler MVC Controller zum Einsatz. Dieser gibt das gerenderte Ergebnis zurück.

 

Personalisierung, Marketing Plattform

Um die eigenen Produkte und/oder Dienstleistungen auf der Webseite für den Kunden bzw. Webseitenbesucher noch besser zu platzieren, kann speziell auf den einzelnen User eingegangen werden. Dabei gibt es verschiedene Möglichkeiten der Personalisierung. Eine mögliche Form stellt die regelbasierte Personalisierung dar. Dabei können Inhalte (Webseitenelemente wie Produkte, Dienstleistungen, etc.) gezielt nur für bestimmte Orte oder IP-Adressen angezeigt werden, oder man kann einstellen, dass gewisse Inhalte nur für mobile Geräte angezeigt werden. Man kann auch Webseitenelemente nach dem Verhalten des Benutzers in der aktuellen Sitzung oder auch durch das Verhalten vergangener Sitzungen auf den Webseitenbesucher speziell anpassen.

Weitere Funktionen um das Marketing zu unterstützen sind Goals und Engagement Values. Für kommerzielle Webseiten ist es oft nicht so von Bedeutung zu wissen, wie oft die Webseite aufgerufen wird. Interessanter sind Informationen, wie oft die Seite zur Newsletter Registrierung oder der Shop zum Kauf eines Produktes aufgerufen wird um auf Conversions abzuzielen. Die Marketing Mitarbeiter können zu diesem Zweck Goals festlegen. Ein Goal definiert eine Aktion des Webseitenbesuchers auf der Webseite, welche von besonderer Bedeutung für das Marketing ist, wie z.B. dem Aufruf des Webshops. Einem Goal wird eine Engagement Value zugewiesen. Dieser stellt den numerischen Wert dieses Goals dar. Beispielsweise ist die Bestellung eines Produkts im Online-Shop wichtiger als die Registrierung für die Newsletter-Zusendung. Somit kann das Goal „Newsletter-Registrierung“ mit der Engagement Value 5 und „Kauf eines Produktes“ mit 40 versehen werden.

Technisch werden Goals als Items erstellt. Getriggert werden die Goals entweder programmatisch im Quellcode oder die Goals werden anderen Items (Pageitems – Seitenelementen) zugeordnet und bei deren Aufruf getrackt.

 

Fazit

Bei diversen Projekten begegnen uns immer wieder Kunden die bereits auf Sitecore vertrauen. Bei ANECON beschäftigt sich seit kurzem nun auch ein eigenes Team mit diesem Tool, weil es in der Tat tolle Möglichkeiten bietet und wir unsere Kunden nun auch in diesem Geschäftsbereich unterstützen können.

 

Abbildungen zum Sitecore-Backend wurden der Beispielwebseite der Neuinstallation einer Sitecore Experience Platform 8.1 – Instanz entnommen.

Passende Artikel

Kommentare gesperrt.