. .

Kontaktieren Sie uns

Wünschen Sie eine Offerte? Oder haben Sie Fragen zu unseren Angeboten?

Kontakt

WCMS-Review: Silverstripe

Von Florian Thoma am 30.11.2010 | 0 Kommentare

Tags: , ,

Nach langem Suchen habe ich endlich das CMS meiner Wahl gefunden: Silverstripe. Gebaut für PHP5 und MySQL basiert Silverstripe auf einem gelungenen MVC-Framework, das dem Entwickler sehr viele Freiheiten lässt und ihn optimal in seinen alltäglichen Arbeiten unterstützt.

Mit der Veröffentlichung der Version 2.0 in Februar 2007 beschloss das Entwicklerteam, Silverstripe 2.0 nicht mehr kommerziell anzubieten, sondern unter die liberale BSD-Lizenz zu stellen. Daraufhin wurde Silverstripe ein GSOC-(Google Summer of Code)-Projekt des Jahres, was dem Programm sehr gut bekommen ist.

Noch ist die Entwicklergemeinde nicht so gross wie bei anderen, bekannteren Systemen, doch gewinnt Silverstripe immer mehr an Beliebtheit.

CMS für Entwickler

Silverstripe unterscheidet sich in vielen Ansätzen von anderen Systemen. Das gesamte Framework ist komplett objektorientiert aufgebaut. Nicht so bewanderte Anwender dürfte dies abschrecken, doch für uns Entwickler ist das der Himmel auf Erden. Wann immer man etwas anders haben will als es der Standard bietet, schreibt man seine eigene Kind-Klasse und überschreibt die entsprechende Methode oder man schreibt eine Extension, welche einer Klasse zusätzliche Funktionalität verleiht.

Das Template-System ist relativ einfach gehalten – und das im besten Sinne. Es gibt nicht unübersichtich viel Logik in den Templates oder gar eine eigene Template-Skript-Sprache, sondern einige wenige Kontroll-Strukturen, mit welchen sich die Logik der dahinter liegenden Klassen problemlos abbilden lässt.

Die Rechtevergabe erfolgt sehr praxisnah über Rollen und Gruppen. Die Berechtigungen lassen sich sehr einfach und sehr detailliert in der Backend-Oberfläche vergeben.

CMS für Autoren

Auf den ersten Blick könnte man meinen, Silverstripe sei etwas simpel gehalten, denn die Benutzeroberfläche ist sehr übersichtlich und einfach aufgebaut. Doch die Administrationoberfläche ist sehr mächtig und wird durch die verschiedenen Module und Erweiterungen noch mächtiger. Der Autor sieht immer nur diejenigen Teile, auf welche er Berechtigung hat und kann die textuellen Inhalte mithilfe des WYSIWYG-Editors TinyMCE bearbeiten. Meiner Meinung nach sollte sich jeder einigermassen Computer-Freundliche Autor in der Silverstripe-Administration zurechtfinden.

Erweiterungen

Um eine einfache Webseite mit reinen Textseiten zu implementieren braucht man eigentlich nicht mehr als das was im Standard-Installationspackage daherkommt. Wenn man aber etwas mehr Funktionalität braucht, kommen Erweiterungen ins Spiel. Noch ist die Anzahl der verfügbaren Module nicht sehr gross, doch das durchdachte MVC-Framework erlaubt es relativ einfach eigene Erweiterungen zu schreiben. Einige Erweiterungen sind aber meiner Meinung nach sehr empfehlenswert:

  • UserForms: Modul mit welchem sich ein Autor ein Email-Formular zusammenklicken kann
  • DataObjectManager: Erweiterung der standardmässig vorhandenen Controls zur Bearbeitung von Datenobjekten
  • Uploadify: Flash-Upload-Felder für den DataObjectManager
  • SpamProtection: Basis-Modul für Captchas, das sich automatisch in alle Formularen einklinkt
  • Mollom: Captcha-Modul das den Mollom-Service implementiert

Ausserdem habe ich noch das Newsletter-Modul verwendet, allerdings musste ich da sehr viele Änderungen vornehmen, da die veröffentliche Version v0.4.0-rc1 in vielen Belangen hinter dem Entwicklungsstand von Silverstripe hinterherhinkt.

SEO-Optimierung

Die SEO-Eigenschaften von Silverstripe sind solide und gut umgesetzt. So ist beispielsweise die Verwaltung selbstsprechender URLs und nützlicher Metadaten bereits ab Werk eingebaut. Valider XHTML-Code stellt einen der Grundpfeiler professioneller SEO-Optimierung dar und bei Silverstripe gehört die XHTML-Validierung bereits zum Konzept. Silverstripe macht den Autor auf nicht-standardkonformen XHTML-Code aufmerksam. Eine XML-Sitemap gehört zum Standard und ist bereits in der Standard-Installation enthalten.

MVC-Framework

Gemäß MVC-Paradigma unterscheidet Silverstripe zwischen drei logischen Schichten: Model, View und Controller. Unter Model versteht man die komplette Datenverwaltung der in der CMS-Datenbank abgelegten Inhalte. Ergebnisse lassen sich an die Controller-Schicht weiterreichen. Die Controller-Schicht bezeichnet die Engine, welche die Abläufe steuert. Sie kann sowohl Daten von der Model-Schicht entgegennehmen als auch anfordern. Und außerdem kann die Controller-Schicht auch Daten von der View-Schicht entgegennehmen und daraufhin maßgeschneiderte Inhalte als Reaktion ausgeben. Insgesamt ist die Controller-Schicht also ein Vermittler zwischen der View- und der Model-Schicht. Die View-Schicht beinhaltet die Layout-Vorlagen (Templates) und sorgt sowohl für die Ausgabe der Daten als auch für die Präsentation im Webbrowser.

Die saubere Trennung der Logik und der Inhalte bei MVC-Entwurfsmustern resultiert in kürzerem und leichter lesbaren Code, der sich einfacher wiederverwenden lässt. Das wiederum senkt die Wartungskosten.

Fazit

Ich bin begeistert von Silverstripe und kann es nur wärmstens empfehlen. Der saubere Aufbau, die verschiedenen gewonnenen Preise und die Tatsache, dass Google das Projekt unterstützt, sprechen dafür, dass Silverstripe eine grosse Zukunft hat.


Geben Sie einen Kommentar ab

Kommentare

Bisher hat niemand diese Seite kommentiert.

RSS Feed für die Kommentare auf dieser Seite