CMSstash

Craft

Craft ist ein modernes Content-Management-System mit einer "Content First"-Strategie. Craft möchte das Leben von Entwicklern und Autoren gleichermaßen leicht machen und hat dafür ein sehr smartes Konzept entwickelt.

Die erste Version von Craft wurde im Jahr 2013 veröffentlicht. Im Dezember 2015 kam "Craft Commerce" hinzu, eine E-Commerce-Ergänzung für das Craft CMS.

Craft ist eine proprietäre Software von Pixel & Tonic. Pixel & Tonic starteten als Entwickler-Team für das CMS Expression Engine. Laut ihrer Webseite hat das Team bis Dezember 2016 mehr als 100.000 Lizenzen für Craft verkauft, sodass Craft inzwischen einen ansehnlichen Marktanteil erorbert hat.

Craft für Content Manager

Craft versteht sich selbst als ein "Content First" CMS. Und tatsächlich legt die moderne Autoren-Oberfläche viel Wert auf eine ansprechende Interaktion und Bedienung. Die mit viel JavaScript erstellten Effekte sind jedoch keine überflüssigen Spielereien, sondern werden ausschließlich für die Verbesserung der Usability und für einen angenehmen Bearbeitungsprozess eingesetzt.

Zu diesen gut durchdachten Features zählt zum Beispiel die Live-Preview, die als Overlay von den Rändern einfährt und einen eigenen Inline-Editor mitbringt. Man kann also auch in der Live-Vorschau Änderungen am Content vornehmen und anschließend bruchlos wieder in den Standard-Modus wechselt.

Mit der Standard-Installation von Craft ist die Administrations-Oberfläche sehr übersichtlich. Das Haupt-Menü startet mit den drei Menü-Punkten "Dashboard", "Entries" und "Settings". Hinter dieser Vereinfachung verbirgt sich jedoch ein mächtiges und flexibles Konzept:

Das Konzept der verschiedenen Inhalts-Typen "singles", "channels" und "structure" erweist sich als sehr mächtig und flexibel. Allerdings muss das System erst einmal initial vom Entwickler konfiguriert werden. Ohne diese Konfiguration ist weder die Erstellung von statischen Seiten, noch ein komfortable Arbeit mit Bildern möglich, da für den Bild-Upload erst ein Upload-Verzeichnis konfiguriert und die Upload-Funktion im Editor (Redactor II) aktiviert werden muss. Wenn diese Features allerdings richtig konfiguriert werden, steht ein umfängliches Media-Management zur Verfügung.

Der Grund für diese notwendige Vorkonfiguration liegt in der Ausrichtung des Craft CMS. Anders als WordPress wendet sich Craft nicht direkt an den Endnutzer, sondern ist als Werkzeug für Agenturen und Entwickler gedacht. Der große Vorteil von Craft ist dabei, dass das System keinerlei Vorgaben für die Webseite macht und von einem Entwickler exakt an die Bedürfnisse des jeweiligen Web-Auftritts angepasst werden kann.

Craft für Entwickler

Craft ist mit PHP geschrieben und es gibt eine frei verfügbare Entwickler-Version, um das CMS zu testen. Auch bei Craft müssen natürlich wie bei allen CMS Templates und Themes entwickelt werden. Wenn es allerdings um die Eingabemasken für die Autoren geht, dann ist die gesamte Arbeit mit Drag & Drop und ein paar Klicks in dem Craft-eigenen Form-Builder erledigt.Der Form Builder arbeitet mit einer Kombination aus Fieldsets, Sections und Entry Types. All das kann der Entwicler oder Administrator im Dashboard von Craft definieren, ohne eine Zeile Code schreiben zu müssen.

In aller Regel wird man also für ein neues Projekt lediglich die Templates und Themes per Hand coden müssen. Dafür greift Craft auf die Template-Sprache Twig zurück. Um die in Craft erstellten Inhalte auf einem Template auszugeben, kann der Entwickler die Namen der vorher definierten Sections und Fields nutzen. Um beispielsweise eine Liste mit Blog-Einträgen auszugeben, muss per Twig nur ein Loop über die Blog-Einträge erstellt und anschließend die Namen der Feld-Einträge angegeben werden:

{% for entry in craft.entries.section('blog').find() %}

{{ entry.title }}

{% endfor %}

Etwas umständlicher ist allerdings die Erstellung von statischen Seiten zum Beispiel für ein Impressum. Es gibt zwei Möglichkeiten, in Craft statische Seiten einzurichten.

Die erste Lösung ist weniger flexible. Dabei definiert man eine neue "Section" für statische Seiten in den Einstellungen. Dann muss allerdings für jede einzelne Seite ein separates Template angelegt werden.

Die zweite Lösung ist flexibler, erfordert allerdings einen höheren Initial-Aufwand. Auch dabei definiert man zunächst eine neue "Section" für statische Seiten in den Einstellungen, legt die neue Section allerdings als "Channel" an. Danach definiert man den Slug für die Channel-URL nach dem Muster mysite.com/{slug}. Dadurch werden neue Seiten in dem Channel immer direkt unter der Root-URL publiziert, zum Beispiel mysite.com/imprint. Der Autor kann jetzt beliebig viele statische Webseiten in dem neuen channel "static" erstellen. Diese Lösung wurde von Jeff Bridgforth beschrieben und zeigt, dass man mit Craft hin und wieder seine gewohnten Gedankengänge durchbrechen und neue Lösungsansätze finden muss.

Es gibt auch ein GitHub Repository für Craft. Das Repository ist nur als Referenz gedacht und darf nicht für die produktive Installation von Craft verwendet werden. Allerdings können sich Entwickler so ein Bild von der Code-Basis machen.

Craft für Nicht-Entwickler

Craft ist ein Content Management System für Entwickler. Es bietet keinerlei vorgefertigte Themes an. Wem das Konzept von Craft zusagt, der sollte mit seiner IT-Abteilung sprechen oder spezialisierte Entwickler anheuern.

Preise

Craft ist ein proprietäres CMS im niedrigen bis mittleren Preis-Segment. Es bietet vier unterschiedliche Kauf-Optionen an:

Empfehlung: Wann lohnt der Einsatz?

Wer auf der Suche nach einem wirklich modernen CMS auf PHP-Basis ist, das seinen Fokus konsequent auf die Usability für Autoren legt, dann ist Craft eine sehr gute Wahl. Craft kann für einfache und mittelkomplexe Seiten verwendet werden, in Kombination mit Craft-Commerce eignet sich Craft natürlich auch sehr gut für Shops und den Handel.

Craft wird von mehreren mittelgroßen Unternehmen verwendet, darunter zum Beispiel die Kunsthalle Stavanger oder Samuelsohn.