CMS für statische HTML-Seiten

30.11.2016 | Code

Statische HTML-Webseiten nachträglich editierbar machen? Das geht! Zum Beispiel mit Sitecake, Coast-CMS und respondCMS ...

Ab und zu ist selbst das einfachste Content-Management-System zu viel: Zum Beispiel bei simplen One-Pagern. Oder bei bereits bestehenden statischen Webauftritten. Oder wenn man einen HTML-Dummy gebaut hat und dem Kunden das eigentlich schon reicht. Wenn… ja wenn der Kunde dann nicht bei jeder kleinen Änderung zum Hörer greifen müsste.

Wenn es um die redaktionelle Bearbeitung von einfachen Webseiten geht, werden die meisten Entwickler an zwei Lösungen denken: Einfache Flat-File-Systeme wie Statamic, Grav und Kirby oder die seit einiger Zeit sehr beliebten statischen Website-Generatoren wie Jekyll und Co. Beide Lösungen haben aber auch Schwächen: Während ausgereifte Flat-File-Systeme mit zugehöriger Autorenoberfläche dem Entwickler schon eine gewisse Integratonsarbeit abverlangen, muss der Nutzer bei statischen Website-Generatoren auf eine Autorenoberfläche (in der Regel) komplett verzichten und mit der Konsole vorliebnehmen. Dem durchschnittlichen User ist das wohl kaum zumutbar.

Coast-CMS: Ein vielversprechender Neuling unter den CMS für statische Webseiten. Coast-CMS: Ein vielversprechender Neuling unter den CMS für statische Webseiten

Wie gut, dass es neben diesen beiden Möglichkeiten noch eine dritte Lösung gibt. Denn einige Systeme haben sich auf die nachträgliche Bearbeitung von statischen HTML-Seiten spezialisiert. Das funktioniert in der Regel über einen Visual Editor mit Incontent-Editing, Inline-Editing, Inpage-Editing oder wie immer man es nennen will. Der Autor editiert die Inhalte also nicht über eine Administrations-Oberfläche mit Eingabefeldern, Buttons und einer Seitenverwaltung, sondern direkt auf der fertigen HTML-Seite: What You See Is What You Get (WYSIWYG). Dafür gibt es sowohl Web-Dienste, als auch kleine Scripte und Content-Management-Systeme, die man nachträglich hinter eine statische Webseite klemmen und auf dem eigenen Server hosten kann.

Die folgenden Systeme habe ich bei den Recherchen gefunden:

Name selbst hosten? Kosten Hinweise
Coast-CMS ja Open Source Noch in Beta, aber vielversprechend
Cushy-CMS nein 0/28 USD/M Remote-Service
inlineCMS ja 0/29/249 USD/M Keine
Pagelime nein 0/19/69 USD/M Remote-Service
respondCMS ja Open Source Visual Editor und klassische Seiten-Administration
SimpleCMS nein 13/99 USD/M Remote-Service
Sitecake ja 39,- USD Für beliebig viele Seiten, aktives Forum
SurrealCMS nein 10 bis 80 USD/M Remote-Service
Unify ja 24,94 USD Möglicherweise nicht mehr aktiv

HTML-Editoren als Remote-Service

Das nachträgliche Editieren von statischen HTML-Seiten wird schon seit Jahren von etablierten Remote-Diensten angeboten. Bei diesen Diensten meldet man sich bzw. seine Seite an und definiert anschließend die Seitenbereiche, die künftig editierbar sein sollen. Der Dienst zieht eine Kopie der Seite, ändert die HTML-Dateien und spielt sie auf den Ursprungsserver zurück. Beispiele für solche Dienste sind:

Vor einigen Jahren habe ich so einen Service mal ausprobiert und kann bestätigen: es funktioniert. Allerdings war mir bei dem Gedanken, dem Service meinen FTP-Zugriff auf den eigenen Webspace zur Verfügung zu stellen, nicht so besonders wohl. Den Zugang benötigt der Service, um die Seite nach den Änderungen wieder zurück auf den eigenen Webspace zu spielen.

Pagelime ist einer der vier bekannten Remote-Lösungen für statische HTML-Seiten. Pagelime ist einer der vier bekannten Remote-Lösungen für statische HTML-Seiten

Man möge mich Kontrollfreak nennen, aber ich hoste solche Sachen lieber selbst. Vor allem, wenn es sich nicht um die eigene Seite handelt, sondern um Seiten von Freunden, Bekannten oder Kunden. Damit starb das Thema vorerst für mich, bis ich eher zufällig auf ähnliche Lösungen gestoßen bin, die sich lokal hosten lassen.

TidyCMS

TidyCMS war das erste Script dieser Art, über das ich vor etwa zwei Jahren gestolpert bin. Mit TidyCMS konnte man - ähnlich wie bei den oben genannten Remote-Services - einzelne Bereiche mit einer bestimmten CSS-Klasse auszeichnen und schon waren sie für den Endnutzer editierbar. Nur war Tidy eben kein Remote-Service, sondern konnte als Script bzw. CMS heruntergeladen und auf dem eigenen Server gehostet werden.

Perfekt. Wäre Tidy nicht vor gut einem Jahr auf die Idee gekommen, sein Konzept umzukrempeln und künftig eine Art Webbaukasten anzubieten. Also wieder eine fremd-gehostete Lösung, von der ich nicht unbedingt abhängig sein will. Soweit ich das Konzept verstehe, geht TidyCMS damit eher in Richtung des Services Siteleaf. Beide richten sich an Web-Designer, die sich möglichst auf das Frontend konzentrieren wollen und bei der Entwicklung ein einfaches Baukastensystem bevorzugen. Schick sehen beide Dienste aus und ich kann mir durchaus vorstellen, dass einige Entwickler genau auf solche Lösungen gewartet haben …

Sitecake CMS

Als ich vor einigen Wochen einen One-Pager entwickelt habe, kam das Thema wieder hoch. Den One-Pager habe ich als statische HTML-Seite runtergecoded. Anschließend fehlte mir jedoch die Lust, hinter die Mini-Seite ein Flat-File-System zu hängen. Zumal sich ein One-Pager mit mehreren sehr unterschiedlichen Seitenbereichen nicht gut in einem klassischen Redkationssystem mit Formularen abbilden lässt.

Nach einer ausgedehnten Suche bin ich dann auf Sitecake gestoßen. Im Gegensatz zu TidyCMS kann Sitecake heruntergeladen und auf dem eigenen Webspace gehostet werden. Sitecake ist zwar nicht kostenfrei, allerdings wirkte der Deal auf mich so fair, dass ich kurzerhand zugeschlagen habe: Man zahlt einmalig 39,- Dollar und kann mit dem Script so viele Seiten bauen, wie man will. Im Vergleich zu den üblichen Modellen, bei denen jede Seite einzeln lizensiert werden muss, war mir das Angebot von Sitecake einen möglichen Fehlschlag wert.

Sitecake: Bewährte und selbst gehostete Lösung, um statische Webseiten editierbar zu machen. Sitecake: Bewährte und selbst gehostete Lösung, um statische Webseiten editierbar zu machen

Es wurde dann aber kein Fehlschlag, sondern die Integration lief beinahe reibungslos: Einfach die HTML-Struktur ein wenig angepasst, die entsprechenden CSS-Klassen eingefügt und wenig später war der Editier-Modus für die Seite verfügbar.

Mit einigen Design-Konstruktionen hat Sitecake allerdings seine Probleme. Beispielsweise kommt das Script mit einer prozentualen Body-Height-Angabe nicht gut klar. Gerade bei One-Pagern sind Fullpage-Designs mit einem Body-Height von 100% nicht ganz unüblich. Diese Probleme lassen sich allerdings umgehen, indem man die entsprechenden Angaben im Editier-Modus mit etwas JavaScript ändert. Als Beispiel:

<script type="text/javascript">
    window.onload = function()
    {
        if ( window.sitecakeGlobals && sitecakeGlobals.editMode === true ) 
        {
            document.getElementsByTagName('body')[0].setAttribute("style","height:auto");
        }
    }
</script>

Diesen Trick haben mir die Jungs von Sitecake noch einmal etwas glatter gezogen. Will heißen: Es gibt bei Sitecake ein Forum und dort bekommt man bei zahlreichen Problemen auch tatsächlich Hilfe.

Sitecake gibt es (soweit ich sehe) schon etwas länger, mindestens seit 2009. Zeitweise stand Sitecake wohl auch auf Github als Open-Source-Projekt zur Verfügung, inzwischen ist es allerdings wieder ein kommerzielles Angebot. Ob Sitecake für alle Projekte dieser Art immer die ideale Lösung ist oder doch mal unlösbare Probleme auftauchen, kann ich nicht versprechen. Es kann aber sicher nicht schaden, einen Service wie Sitecake in sein Lösungs-Repertoir mit aufzunehmen.

Neben Sitecake gibt es noch das ähnlich gelagerte Projekt Unify. Unify wird aber offenbar nicht mehr aktiv betrieben: Die Copyright-Zeile reicht nur bis in das Jahr 2013 und das ohnehin nicht sonderlich aktive Forum hat seinen letzten Beitrag im Jahr 2012 gesehen. Immerhin findet sich im Changelog ein Hinweis auf PHP7, sodass eine Wartung des Scriptes auch nach 2013 nicht ganz ausgeschlossen ist. Vielleicht hat jemand Erfahrungen mit Unify und möchte sie in den Kommentaren mit uns teilen …

Coast-CMS

Coast-CMS ist für mich, neben Sitecake und dem noch folgenden respondCMS, die spannendste CMS-Entdeckung des Jahres. Und im Gegensatz zu Sitecake ist Cost-CMS tatsächlich sehr jung und neu: Es befindet sich noch in der Beta-Phase und dürfte erst seit einigen Monaten in der Öffentlichkeit stehen. Ein erstes Entwickler-Tutorial liefert ein paar Einblicke:

Nachdem Sitecake seine freie Github-Version wieder eingestampft hat, ist Coast-CMS das einzige mir bekannte Open-Source-Projekt in diesem Bereich und schon deswegen eine Bereicherung. Hinzu kommt, dass Coast-CMS als neues Projekt auch auf aktuelle Technologien zurückgreift und keine Altlasten mit sich herumschleppt. Neben der sehr solide wirkenden Usability ist auch noch die Herkunft des Projekts ein weniger ausschlaggebender, aber dennoch netter Plusspunkt: Nach Kirby im Flat-File-Bereich gibt es nun auch im CMS-Bereich für statische Webseiten ein Produkt, das unmittelbar in der Nachbarschaft beheimatet ist (Bielefeld). Von daher ist Coast-CMS für meine nächste Webseite schon gesetzt und ich bin wirklich gespannt, wie sich das Projekt in Zukunft weiterentwickeln wird.

inlineCMS

inlineCMS ist ein weiteres Content-Management-System für statische HTML-Seiten. Auch inlineCMS lässt sich auf dem eigenen Server installieren. Ich habe bislang allerdings noch keinen Eigen-Versuch gestartet. Im Gegensatz zu den oben genannten Systemen fährt inlineCMS ein klassisches Lizenzmodell pro Seite und Seitentyp:

  • 0,- für persönliche Seiten
  • 29,- USD für eine kommerzielle Seite
  • 249,- USD für beliebig viele kommerzielle Seiten

Zumindest die Demo-Version wirkt sehr solide. Im Vergleich zu Sitecake und Coast kommt mir der Edit-Modus allerdings etwas konservativer vor. Trotzdem sollte man auch dieses System in die Auswahl ziehen, zumal sich nicht wenige User mit dem Inline-Editing etwas schwerer tun und traditionellere Ansäte kein Nachteil sein müssen.

respondCMS

Neben diesen Spezial-Lösungen für statische HTML-Seiten bieten auch einige Flat-File-Systeme visuelle Editoren für dynamische Webauftritte an. Dazu gehören RazorCMS, Blozilla und WonderCMS. Bei meinen eigenen Versuchen hatte allerdings nur RazorCMS auf Anhieb funktioniert.

Im Zuge der Recherchen zu diesem Beitrag bin ich noch auf das Flat-File-System respondcms.com gestoßen.

respondCMS schlägt mit moderner Technologie eine Brücke zu den Flat-File-Systemen respondCMS schlägt mit moderner Technologie eine Brücke zu den Flat-File-Systemen

Respond basiert auf dem Micro-Framework Lumen von Laravel, nutzt Angular 2 und setzt auf Polymer für Web-Components. Respond verbindet eine Art Seiten-Manager bzw. einen Admin-Panel mit einem Frontend-Editing, das man auch von Coast oder Sitecake kennt. Und das Core-System von Respond ist open-source.

Das wirkt alles erst einmal recht spannend. Allerdings ist Respond eher etwas für Frontend-Profis. Für eine lokale Test-Version muss erstmal ein virtueller Host eingerichtet werden und auch danach ist ein reibungsloser Betrieb noch nicht garantiert. Zumindest ich habe respond nicht innerhalb von 10 Minuten zum Laufen gebracht. Und die eher dünne Dokumentation hilft da auch nicht wirklich weiter. Natürlich kann man als weniger versierter Frontend-Entwickler auf den konstenpflichtigen Installations-Service von Respond zurückgreifen. Ich würde das System aber eher Angular-Profis empfehlen und ansonsten auf die Standard-Technologien von Coast oder Sitecake verweisen.

Dennoch, wer sich mit komplexer Frontend-Technologie auskennt, kann mit Respond, Coast und Sitecake möglicherweise gleich drei Systeme für statische HTML-Seiten in sein Portfolio mit aufnehmen.

Dieser Beitrag gehört zu der Serie "CMS". Das sind alle Artikel der Serie:

Wenn du ein Web-Projekt von A-Z erstellen willst, findest du im Themenüberblick viele Artikel zu jedem Schritt.

blog comments powered by Disqus