Anzeige
Anzeige
Software & Entwicklung
Artikel merken

Das Content-Modell von eZ Publish: Einstieg in eZ Publish

Das Content-Modell von eZ Publish bildet die Basis, mit der eZ Publish die Erweiterbarkeit und Anpassbarkeit an viele mögliche Applikationen erzielt. Dieser Artikel stellt das Content-Modell vor und zeigt, wie sich damit eine eigene Applikation, auch abseits üblicher Webauftritte, einfach umsetzen lässt.

6 Min. Lesezeit
Anzeige
Anzeige

eZ Publish kann sowohl als Content Management System als auch als Plattform für anspruchsvolle Projekte, zum Beispiel in den Bereichen Web-Publishing, Media-Portale, Intranet, E-Commerce und Extranet, eingesetzt werden. Für den Einsatz sprechen unter anderem professioneller Support durch den Hersteller sowie ein für den Einsatz in mittleren und großen Unternehmen ausgelegter Funktionsumfang. Hierzu gehören etwa Versionierung, Mehrsprachigkeit, eine leistungsfähige Template-Engine sowie eine flexible Erweiterung und Integration des Systems über Plugins.

Hintergrund

Anzeige
Anzeige

Hinter dem System steht die norwegische Firma eZ Systems AS, mit Niederlassungen in diversen Ländern, darunter auch Deutschland. Neben eZ Publish entwickelt eZ Systems mit den eZ Components auch eine Open-Source-Komponentenbibliothek. Mit dem Open-Source-Geschäftsmodell zielt eZ Systems Enterprise auf ein flexibles Kostenmodell für den Anwender ab. Stabilität, Funktionalität, Fehlerfreiheit und Verlässlichkeit sollen durch das kombinierte Mitwirken der Community und eines professionellen Partnernetzwerks gewährleistet werden.

Das Content-Modell

Die Verwaltung und Verarbeitung der Inhalte ist die Kernkomponente eines Content Management Systems – ein Content Management Framework wie eZ Publish muss dabei noch mehr Möglichkeiten zur Anpassung zur Verfügung stellen.

Anzeige
Anzeige

Sollen Inhalte in der Datenbank gespeichert werden, erscheint das Active-Record-Pattern, wie es aktuell von vielen Frameworks wie zum Beispiel Ruby On Rails umgesetzt wird, oft am naheliegendsten. Dieses Modell hat jedoch mehrere gravierende Nachteile, wenn darüber komplexe Inhaltsstrukturen abgebildet werden sollen:

Anzeige
Anzeige
  • Die Anpassbarkeit gestaltet sich problematisch, denn bei üblichen
    Active-Record-Implementierungen muss die Datenbank erweitert oder geändert werden, wenn neue Inhaltstypen angelegt werden sollen.
  • Wenn
    einzelne Inhaltsobjekte in der Applikation jeweils einer Zeile in der
    Datenbank entsprechen, lässt sich die Versionierung nur durch mehrspaltige
    Indizes umsetzen, dies gilt ebenso für die Mehrsprachigkeit und
    für verschiedene Status des Inhalts.
  • Einmal in der Datenbank abgelegte Inhalte müssen zur Darstellung für den
    Benutzer der Webapplikation strukturiert werden. Dies passiert meist
    durch das Assoziieren der Inhalte in einer Baumstruktur, die der Navigation
    entsprechen mag. Wenn verschiedene Inhalte (aus
    verschiedenen Tabellen) so strukturiert werden müssen, ist dies nicht
    mehr sinnvoll in einer relationalen Datenbank abzubilden und muss im
    Code implementiert werden. Dies erschwert das einheitliche Management
    von Inhalten.

eZ Publish

eZ Publish verwendet ebenfalls eine Implementierung des Active Record Patterns, jedoch lediglich zur Abstraktion des Datenbankzugriffs und nicht, um die Inhalte direkt in der Datenbank abzulegen. Zur Abbildung der Inhalte auf die relationale Datenbank implementiert eZ Publish ein objektorientiertes Modell für die Inhalte.

Der Entwickler einer Applikation kann Inhaltsklassen erstellen, die aus einer Reihe von Attributen unterschiedlichen Typs bestehen können. Die eigentlichen Inhalte sind Instanzen dieser Inhaltsklassen und werden mehrsprachig und versioniert auf die relationale Datenbank abgebildet. Sowohl die Definition als auch die Instanzen können jederzeit modifiziert werden, ohne dass die Datenbankstruktur selbst angepasst werden muss.

Anzeige
Anzeige

Wie das vereinfachte Modell im Bild oben zeigt, gliedert sich diese Struktur im Wesentlichen in drei Teile. Die Inhaltsklassen können einen beliebigen Namen, wie zum Beispiel „Artikel“ für ein Newsportal tragen, über den die Klasse beim Anlegen neuer Inhalte identifiziert werden kann. In eZ Publish kommt noch eine Spezifikation zur Generierung des Objektnamens aus den Attributen hinzu. Jede Klasse verfügt über eine beliebig lange Liste von Attributen, die jeweils einem in dem Framework bekannten Typ entsprechen. Dem „Artikel“ würden zum Beispiel die Attribute „Title“ vom Typen „String“ und dem eigentlichen „Text“ vom Typen „XMLText“ zugeordnet. Ein spezieller Attributtyp „price“ ermöglicht es zum Beispiel, dass Besucher das angezeigte Objekt über den integrierten Shop kaufen.
Wenn ein neuer Artikel über das Benutzerinterface erzeugt wird, kann eZ Publish automatisch ein passendes Eingabeformular, zum Beispiel mit einem Rich-Text-Editor, erzeugen. Mit den Benutzereingaben wird dann entsprechend eine neue Zeile in der Tabelle der Inhaltsobjekte angelegt, assoziiert mit einer ersten Version des Objekts in der Sprache, in der die Version erstellt worden ist. Für jedes Attribut werden die Daten in der Datentabelle abgelegt. Werden nachträglich Attribute zu einem Inhaltsobjekt hinzugefügt, kann bei Nichtvorhandensein der Standardwert angezeigt werden – und entfernte oder umbenannte Attribute entsprechend behandelt werden.

Der Online-Editor

Viele Inhalte, wie der Artikel im vorangegangenen Beispiel, machen Formatierungen durch den Redakteur notwendig. eZ Publish beinhaltet einen WYSIWYG-Editor, der sowohl im Frontend als auch im Administrator-Backend verwendet werden kann. Das Editieren von Inhalten mit dem Online-Editor ist an gängige Word-Prozessoren angelehnt, sodass sich Redakteure leicht zurechtfinden. Referenzen auf andere Inhalte lassen sich natürlich im Online-Editor ebenso erstellen, wie Elemente aus der in eZ Publish integrierten Medienbibliothek eingebunden werden können, wie im unteren Bild zu sehen.

Erstellen von Inhalten

In eZ Publish können Inhalte nicht nur über die browsergestützte Bedienoberfläche eingestellt werden. Für Redakteure einer Seite ist es oftmals bequemer, Inhalte im Frontend einzupflegen oder zu bearbeiten.

Anzeige
Anzeige

Eine andere Möglichkeit zur bequemen Bearbeitung der Inhalte ist das Navigieren der in einer Baumstruktur abgelegten Inhalte über einen Webdav-Client, in dem die Inhaltsobjekte als Dateien zur Verfügung stehen. Diese Dateien können dann mit OpenOffice oder Microsoft Word bearbeitet oder neu erstellt und dann wieder hochgeladen werden. Die Abbildung auf die Inhaltsklassen kann dabei selbst definiert werden.

Inhalte strukturieren

Mit dem einheitlichen Modell, das eZ Publish verwendet, um beliebige Inhalte in der Datenbank abzulegen, ist auch eine Strukturierung der Inhalte einfach. Grundsätzlich liegen alle Inhaltsobjekte in einem Baum, wobei jeder Knotenpunkt des Baums ein Inhaltsobjekt ist. Ein Inhaltsobjekt kann jedoch neben seiner Hauptposition noch an beliebig vielen anderen Stellen referenziert werden, sodass sich zum Beispiel ein einzelner Artikel gleichzeitig im Archiv und auf der Startseite der Webseite befinden kann. Dies ermöglicht sowohl das Wiederverwenden von Inhalten als auch neue Möglichkeiten der Strukturierung.

Bei jedem Inhaltsobjekt kann grundsätzlich angegeben werden, ob es andere Inhaltsobjekte als Kinder enthalten darf. Über die Benutzerauthorisierung kann definiert werden, welche Benutzergruppe oder welcher Benutzer welche Inhalte unter welchen anderen Inhalten anlegen darf. Diese Rechte können dazu auf bestimmte Teilbäume limitiert werden. Dabei lassen sich die Rechte natürlich nicht nur für das Anlegen von Objekten definieren, sondern auch gezielt für alle anderen denkbaren Aktionen, wie das Ansehen, Modifizieren oder Freigeben von bestimmten Inhaltsklassen oder Gruppen von Inhaltsklassen. Um bei dem bekannten Beispiel zu bleiben, wäre es möglich, dass die Redakteure neue Artikel schreiben und in einem für anonyme Besucher nicht sichtbaren Bereich erstellen, während der Chefredakteur diese Artikel auf die Startseite stellen darf. Gesondert ließe sich dann beispielsweise das Recht an einzelne Redakteure vergeben, veröffentlichte Artikel zu korrigieren. Dieser einfache Ablauf lässt sich über die konfigurier- und programmierbaren Workflows in eZ Publish noch erweitern.

Anzeige
Anzeige

Fazit

Mit dem Content-Modell von eZ Publish haben Sie einen ersten Überblick über die Möglichkeiten des Content Management Frameworks erhalten. Neben Standarderweiterungen [1] des Herstellers wie eZ Newsletter (einer professionellen Newsletter-Lösung), eZ Flow (einer dynamischen Seiten-Layout-Planung insbesondere für die Medienindustrie) oder eZ Find (einer Erweiterung zur Integration unternehmensweiter Suchergebnisse), existieren Standardadapter zu LDAP, Lotus-Notes, Payment- und ERP-Systemen wie SAP und Microsoft Dynamics. Dazu kommen Erweiterungen aus der großen Community um eZ Publish [2]. Ein Überblick über seine Features [3] findet sich auf der Website von eZ Systems. Eine Vielzahl von Referenzen zum Einsatzgebiet von eZ Publish findet sich ebenfalls auf der Seite des Herstellers [4].

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
Schreib den ersten Kommentar!
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige