Anzeige
Anzeige
Software & Entwicklung
Artikel merken

Kirby: CMS ohne Datenbank

Kirby ist als noch recht junges Content-Management-System eine schlanke Alternative, die in die Kategorie „dateibasierte Systeme“ fällt. Als solches kommt das CMS aus Deutschland ohne klassische Datenbank aus. Dieser Artikel beleuchtet das CMS, mögliche Einsatzgebiete, Einschränkungen und künftige Entwicklungen.

4 Min. Lesezeit
Anzeige
Anzeige

Das Konzept hinter dateibasierten Systemen ist simpel: Statt Einträge
in einer klassischen Datenbank abzulegen, speichert das System die
Inhalte direkt in
Ordnern und sich darin befindenden Textdateien. Die Verwaltung findet
über FTP,
WebDav oder Dropbox statt. Der Vorteil liegt darin, dass aufwendige
Installationen und ein zusätzlicher Datenbank-Server entfallen.
Zusätzlich kann der Nutzer die gesamte Seite bequem über
Git oder jedes andere Version-Control-System verwalten.

Anzeige
Anzeige

Gerade im Blogbereich findet aktuell ein neuer Trend zu dateibasierten Systemen statt. Jekyll [1] oder Blosxom [2] fungieren hier als Vorreiter, aber auch auf Dropbox basierende Systeme, wie Scriptogr.am [3] oder Calepin [4] erfreuen sich einer wachsenden Beliebtheit. Kirby [5] greift die Idee der dateibasierten Blogsysteme auf und überträgt diese auf ein CMS.

Kirby unter der Haube

Kirby baut auf PHP ab Version 5.2+ und läuft zuverlässig unter Apache2, LightHTTPD und Nginx. Für das Erzeugen von benutzerfreundlichen URLs sollte man über einen Server verfügen, der URL-Rewriting unterstützt, auch wenn dies keine Voraussetzung für den Einsatz von Kirby ist.

Anzeige
Anzeige

Das System selbst gliedert sich in drei unabhängige Ordner. Der Ordner „content“ verwaltet die Inhalte und die Struktur der Seite, im Ordner „site“ befinden sich alle projektspezifischen Einstellungen, Plugins und Templates, während im Ordner „kirby“die System-Dateien liegen. Im Rahmen dieser Struktur bleibt der „kirby“-Ordner immer unangetastet und ein Update des Systems beschränkt sich auf das Ersetzen dieses Ordners.

Anzeige
Anzeige

Für die Template-Entwicklung setzt Kirby auf reines PHP, statt eine zusätzliche Template-Sprache anzubieten. Die von jQuery inspirierte API ermöglicht dabei über das Verketten von Methoden den Zugriff auf jeden erdenklichen Teil der Seitenstruktur. So ergibt sich von einfachen Templates bis hin zu komplexen Verknüpfungen einzelner Inhalte sehr viel Gestaltungsfreiraum.

Inhalt und Struktur

Das Erstellen von Inhalten geht mit Kirby schnell von der Hand. Für jede Unterseite legt man im „content“-Ordner einen Unterordner mit einer Textdatei an. Der Name der Textdatei entscheidet darüber, welches Template das System verwendet. Über vorangestellte Zahlen vor dem Ordnernamen kann der Nutzer eine Sortierung der Seiten vornehmen. Ordner mit Zahl gelten als sichtbar, Ordner ohne Zahl als unsichtbar. Damit kann der Nutzer steuern, welche Unterseiten zum Beispiel in Menüs aufgelistet werden. Die Ordnernamen bilden außerdem den URL-Pfad.

Anzeige
Anzeige
Derzeit entsteht mit Kirby Panel ein Web-Interface für die Verwaltung der Inhalte im Browser.
Derzeit entsteht mit Kirby Panel ein Web-Interface für die Verwaltung der Inhalte im Browser.

Innerhalb von Inhaltsordnern lassen sich beliebig viele Bilder, PDFs und andere Dateien ablegen, die man dann in die Templates mit einbinden kann. Für die Formatierung von Texten setzt Kirby auf eine erweiterte Form von Markdown.
Das sogenannte Kirbytext bietet zusätzlich zu den Grundfunktionen eine
Reihe von Tags, die zum Beispiel das Einbinden von Bildern oder das
Verlinken von internen Seiten vereinfachen. Kirbytext lässt sich
außerdem erweitern, um eigene Tags erstellen zu können.

Kirbys Textdateien sind durch eine YAML-ähnliche Syntax in beliebig viele Felder unterteilbar. Diese Felder kann der Anwender über die API in den Templates und Snippets unbegrenzt einsetzen, um die Inhalte anzuzeigen oder die Ausgabe zu steuern. Dadurch entsteht die Flexibilität einer NoSQL-Lösung. Die Datenstruktur bleibt jederzeit veränderbar.

Anwendung und Einschränkungen

Kirby hat durch die Verwaltung über FTP und Texteditor einen
eingeschränkten Kundenkreis und eignet sich besonders für
Designer, Fotografen und Webentwickler – alle,
die sich mit dieser Verwaltung anfreunden können. Ob dies der
Fall ist, lässt sich meist schon im ersten Kundengespräch herausfinden.
Für manche Kunden sind eine derartige Art der Verwaltung und der
Texteditor-Zwang klare K.O.-Kriterien. Kirby kann ohne Weiteres Projekte mit mehreren hundert Unterseiten
bewältigen. Durch die Flexibilität der Datenstruktur eignet es sich
zudem, um Seiten zu erstellen, die eine Vielzahl unterschiedlicher
Inhaltstypen und Templates benötigen. Auch als Prototyping-Tool findet
Kirby vermehrt Einsatz, um Seiten direkt im Browser zu konzipieren und
zu gestalten.

Anzeige
Anzeige

Einige Anwendungen kann man mit Kirby nur schwer oder gar
nicht umsetzen. Alles, was in die Bereiche nutzergenerierter Inhalt oder E-Commerce
fällt, sollte man auch weiterhin einem Datenbanksystem anvertrauen.
Kommentare, Foreneinträge, Bestellungen bei einem Shop oder allgemeine
Kundendaten – nicht alles eignet sich für eine Ablage in Text-Dateien.
Oft kann man hier jedoch zusätzliche externe Lösungen mit einbinden –
zum Beispiel Disqus [6] für Kommentare. Auch komplexe Benutzer-Rechte und -Gruppen kann Kirby über FTP nicht anbieten.

Für eine Kirby-betriebene Website fallen einmalig 30 Euro an.
Dafür ist der Quellcode uneingeschränkt öffentlich auf Github
verfügbar und jeder, der Interesse am System hat, kann beliebig lange
lokal oder auf einem Testserver experimentieren und evaluieren. Es geht bei der kommerziellen Lizenz von Kirby in erster
Linie um die Unterstützung der Entwicklung und Dokumentation von Kirby.

Das Kirby Panel

Um in Zukunft einen größeren Kundenkreis anzusprechen und wichtige Funktionen wie Benutzer-Rechte abbilden zu können, entsteht aktuell das Kirby Panel – ein Web-Interface, das die Verwaltung der Inhalte auch über den Browser ermöglicht. Das Kirby Panel befindet sich in einer öffentlichen Betaphase und kann somit heruntergeladen und getestet werden [7].

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
2 Kommentare
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

markusthomasde

Ähm, der Beitrag steht nicht in der t3n 30.

Antworten
Luca Caracciolo

Sorry, falsche interne Zuordnung. Der Artikel war in der t3n 29.

Antworten

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