Anzeige
Smartes Cloud Hosting für anspruchsvolle Projekte.
↬ Loslegen und Spaces testen ↬ Jetzt testen!
  • CMS
Dieter Petereit 22. Februar 2010

Tomato CMS 2.x – Newcomer aus Vietnam

Schon die Herkunft dieses recht neuen Content Management Systems (CMS) weckt Interesse. Die TIG Corporation, die das Produkt TomatoCMS als Open Source entwickelt, hat ihren Sitz in Hanoi City. Möglicherweise sind das nicht die besten Voraussetzungen, um TomatoCMS erfolgreich in den USA einzuführen, aber hierzulande könnte es gelingen. Falls die Funktionalität internationalen Ansprüchen genügen kann natürlich. Schaun mer mal…

Anzeige

logo-w500.png

Zielgruppe

TomatoCMS will ausweislich der optisch und technisch ganz ansprechenden Website das CMS für jeden Einsatzzweck sein. Aus dem nicht ganz einwandfreien Englisch der Produkt-Site lässt sich entnehmen, dass TomatoCMS komplett modular aufgebaut ist.

TomatoCMS unterscheidet in Module, Templates und Plugins, was zunächst einen sehr flexiblen Zuschnitt auf den jeweiligen Einsatzzweck vermuten lässt. Anders als so manch anderes größeres CMS eignet sich TomatoCMS dem Vernehmen nach auch sehr gut als Blogsystem, was das Produkt-Blog zu beweisen vermag. Das Template des TomatoCMS-Blog wird übrigens mitgeliefert, zerschießt aber im Backend (!) die Dropdownnavigation.

Anzeige

TomatoCMS rühmt sich damit, DAS CMS auf der Basis des Zend Framework zu sein. Außerdem finden jQuery sowie das CSS-Framework 960.gs Verwendung. Letzteres stuften wir bei Dr. Web ja auch schon einmal als tauglich ein – genügend Gründe also für einen intensiveren Produkttest.

Grundlegendes

Wenn man bereits weiß, dass TomatoCMS auf dem Zend Framework basiert, wird man sich nicht wundern, dass das Gesamtsystem mit gepackten 7,23 MB und entpackten 27,7 MB mit 3.624 Dateien in 819 Ordnern nicht eben zu den Leichtgewichten gezählt werden kann.

In Sachen Systemvoraussetzungen setzt TomatoCMS auf aktuelle Standards. Es besteht auf einem Apache Webserver, PHP ab Version 5.2 und MySQL ab Version 5.0. An PHP Erweiterungen werden gd, json, mbstring, mysql, pdo, pdo_mysql, simplexml, xml, xmlreader und zip benötigt. Mein Webspace bei All Inkl erfüllt alle Voraussetzungen, im Grunde dürfte es bei aktuellem Standard-Webspace keine Probleme geben. Immerhin hat sogar 1&1 bereits auf MySQL 5 in den Webhosting-Produkten umgestellt.

Installation

Die Installation läuft im Grunde typisch ab. Sie laden das Komplettpaket von der Website herunter, entpacken es und geben Ihrem Lieblings-FTP-Client den Auftrag, das entpackte Verzeichnis auf Ihren Webspace hoch zu laden.

Ich richte stets vor dem Upload eine Subdomain sowie eine entsprechende MySQL-Datenbank ein, so dass ich im Rahmen des jeweiligen Installationsscripts nicht erst ins Provider-Backend wechseln muss.

Befindet sich TomatoCMS auf Ihrem Webspace, was aufgrund der Größe durchaus eine kleine Geduldsprobe darstellt, sollten Sie zuächst die Schreibberechtigungen für die Verzeichnisse app/templates, temp und upload, sowie auf die Dateien app/config/layout.ini und app/config/app.ini setzen. Die app.ini entspricht hinsichtlich ihrer Aufgabe sehr weitgehend der wp-config.php, die viele von Ihnen sicherlich aus WordPress kennen. Die app.ini wird im Zuge der Installation automatisch bestückt und enthält die wesentlichsten Informationen zum Betrieb des Systems, wie die Datenbankverbindung und die zu verwendende Sprache.

In der zum Testzeitpunkt aktuellen Version 2.0.2 existiert ein Installscript, das recht zuverlässig arbeitet und in meinem Fall simpel per Aufruf der zuvor eingerichtetetn Subdomain gestartet wurde. Da ich die Berechtigungen nicht im Vorfeld gesetzt hatte, sah mein Installationsscreen so aus und ich kam mangels Next-Button nicht weiter:

01-install-errors-w500.png

Nach Setzen der erforderlichen Berechtigungen widersetzte sich TomatoCMS nicht länger.

02-install-sin-errors-w500.png

Im nächsten Schritt fragt TomatoCMS Sie    nach Informationen  zur Datenbankverbindung, den Grundeinstellungen der Website, dem Starttemplate und der zu verwendenden Zeitzone. Lassen Sie sich nicht irritieren. TomatoCMS schlägt bereits Daten für die Datenbankverbindung vor. Das hat keinen weiteren Hintergrund. Überschreiben Sie einfach den Vorschlag mit Ihren eigenen Daten.

03-config-w500.png

Haben Sie alle erforderlichen Eingaben getätigt, teilt TomatoCMS Ihnen das temporäre Login mit und bittet um den finalen Installationsbutton-Druck.

04-install-complete-w500.png

Je nachdem welches Template Sie für den ersten Start ausgewählt haben, sehen Sie einen der beiden folgenden Screens:

05-first-start-empty-w500.png

Der Startbildschirm von Tomato CMS

05b-first-start-empty-blog-w500.png

Das Blog von Tomato CMS ist mit Vorsicht zu genießen.

Hinweis: Wählen Sie zunächst das Template Website, da das Blogtemplate die obere Navigation des Backend zerschießt (jedenfalls im Chrome, Firefox und Internet Explorer). Ohne funktionierende Dropdownnavi macht der Start ins TomatoCMS keine rechte Freude …

Erste Schritte

Um ins Backend zu gelangen, gibt es nirgends einen Link, den Sie klicken könnten. Stattdessen geben Sie in meinem Beispiel tomatocms.blogmanufaktur.de/admin ein. Es gab übrigens Probleme, wenn TomatoCMS in ein Unterverzeichnis installiert wird (zum Beispiel www.blogmanufaktur.de/tomatocms/admin). Diese Probleme sollen nach Aussage der Entwickler mittlerweile behoben sein. Da ich stets die Subdomain-Variante vorziehe, habe ich das Problem ohnehin nicht.

06-admin-login-w500.png

Haben Sie sich erstmals erfolgreich ins Backend eingeloggt, ändern Sie bitte sofort unter Account > Change Password Ihr Passwort. Das Backend, das hier wie in WordPress Dashboard heißt, begrüßt Sie recht übersichtlich:

07-admin-dashboard-start.png

Das Dashboard rekrutiert sein Layout aus der Darstellung der für die Website installierten Module und kann daher sehr schlank, aber auch sehr beladen daherkommen. Der Vorteil an der Sache: Der User sieht immer nur Möglichkeiten, die er in der konkreten Website auch tatsächlich hat. Bei der Gelegenheit wird auch klar, dass TomatoCMS immer nur eine einzelne Website verwalten kann.

Ein Modul nach Lesart TomatoCMS stellt eine bestimmte Funktionalität, beispielsweise die Kommentarfunktion, Anzeigen, Multimediaeinbindung oder Umfragen zur Verfügung. Alle Funktionen sind als Module realisiert.

Soll so ein Modul nun auf der Website auch optisch zum Zuge kommen, bedarf es neben dem Modul noch eines korrespondierenden Widgets, das die Anzeige der jeweiligen Funktion übernimmt. So wie sich die Funktionalität komplett aus Modulen generiert, wird die Optik komplett durch Widgets bestimmt, die unter Verwendung des 960.gs auf der einzelnen Seite frei beziehungsweise 960.gs-konventionskonform angeordnet werden können. Dazu weiter unten etwas mehr.

In Sachen Benutzerverwaltung unterstützt TomatoCMS das Rollenmanagement unter Verwendung von Usern und Usergroups. Rechte können sehr fein granuliert für jedes Modul und dessen Unterfunktionen vergeben werden.

Nicht gut gelöst ist die Multilingualität. Zwar kann TomatoCMS grundsätzlich in allen Sprachen der Welt, auch LTR betrieben werden, jedoch ist es erforderlich, für jedes Modul eine separate Sprachdatei zu erstellen und im jeweiligen Unterverzeichnis des Moduls abzulegen. Das hätte man sich weit einfacher vorstellen können, ist aber dem Konzept geschuldet, dass jedermann weitere Module frei entwickeln können soll. Im Falle fehlerhafter Modulübersetzungen fällt es nicht auf die Sprachdatei als Ganzes zurück ;-).

Die Aktivierung einer anderen Sprache hingegen ist einfach. Dazu öffnet man am besten die app.ini, die man so wenigstens auch etwas besser kennenlernt und platziert den gängigen Sprachcode:

08-config-app-ini-w500.png

Ist für ein Modul die gewünschte Sprache nicht vorhanden, soll die Standardsprache – also Englisch – verwendet werden. Die Sprachdateien können per Backend dialoggesteuert angelegt werden. Praktikabler erscheint mir aber das Herunterladen der jeweiligen englischen Sprachdatei mit nachfolgendem Übersetzen en bloc.

Oberflächendesign

Grundsätzlich ist das Layouten eines Templates für TomatoCMS aufgrund der Verwendung des 960.grid recht einfach. Dies vor allem deshalb, weil 960.gs gut dokumentiert ist und von daher keine tiefgreifenden Codeanalysen im Beispieltemplate erforderlich werden. Da habe ich in anderen Systemen schon die dollsten Sachen erlebt.

Noch toller aber wäre es, wenn der integrierte Layout-Editor des TomatoCMS funktionieren würde. Dessen im Grunde beeindruckende Funktionalität beschreibt das folgende YouTube-Video:

Danach hat der Layout-Editor vollen Zugriff auf das Grid-Framework und ist so theoretisch in der Lage, auch Personen, denen das Layouten mit 960.gs eher fremd erscheint, die Nutzung aller Layoutvarianten zugänglich zu machen. Leider ist es mir nicht gelungen, den Layout-Editor, der über das Dashboard unter Extend > Template > List Of Pages > Edit Layout aufgerufen wird, zu benutzen. Stets versucht der Editor eine Datei aufzurufen, die es im entsprechenden Verzeichnis nicht gibt, was letztlich zu einem „failed to open stream“ führt. Schade, denn der Layout-Editor könnte ein echter Alleinstellungspunkt sein.

Zudem erscheint mir die Einbindung der diversen Bibliotheken technisch stark verbesserungsbedürftig zu sein. So gibt es immer wieder Darstellungsfehler und nicht funktionierende Elemente im Backend, ohne dass man ein Fehlermuster erkennen könnte.

Fazit: TomatoCMS ist ein junger, aber interessanter Mitbewerber in der Arena der CMS. Derzeit ist er nicht ausgereift genug, um ihn ernsthaft für die produktive Nutzung in Erwägung zu ziehen. Ich prophezeie auch, dass TomatoCMS kurzfristig unter einem anderen Namen auftreten wird, denn die Bezeichnung TomatoCMS wird vom britischen Tomatonetwork bereits seit Jahren für ihr eigenes, geschlossenes KaufCMS verwendet. Dass man selbst den Namen nicht ordentlich recherchiert hat, passt ins insgesamt unreife Gesamtbild der vietnamesischen CMS-Hoffnung. In jedem Falle aber sollte man TomatoCMS oder wie auch immer es bald heißen mag, in Zukunft mindestens aus dem Augenwinkel beobachten.

Dieter Petereit

Dieter Petereit

ist seit 1994 im Netz unterwegs, aber bereits seit über 30 Jahren in der IT daheim. Seit Anfang des neuen Jahrtausends schreibt er für diverse Medien, hauptsächlich zu den Themenfeldern Technik und Design.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.