Wir haben noch nicht alle älteren Artikel nachbearbeitet. Das bezieht sich in der Regel nur auf die Codebeispiele, die noch nicht optimal dargestellt werden.
Content Management und Webstandards: MODx
Im Dezember haben wir im Adventskalender verschiedene Content Management Systeme (CMS) auf die Unterstützung von Webstandards untersucht. Sylke Wienold wirft nun für die Webkrauts einen Blick auf ein weiteres CMS: MODx.
Bei MODx stehen zwei Aspekte im Vordergrund. Zum einen legt das System besonderen Wert auf ein standardkonformes Markup; auch kleinste Codehäppchen liefern valide Ergebnisse. Zum anderen geht es über ein reines Content Management System hinaus und stellt auch Elemente für ein Content Management Framework zur Verfügung. Das bedeutet, dass es gut definierte Schnittstellen beinhaltet, um eigene Komponenten oder ganze Applikationen zu entwickeln.
Dementsprechend werden alle bestehenden Standards befolgt, XHTML und rein CSS basierte Layouts sind nicht nur möglich, sondern werden ausdrücklich unterstützt. Die Umsetzung barrierefreier Seiten mit diesem CMS durch keine Systembeschränkungen behindert. AJAX Kommunikations- und Effektbibliotheken sind ebenso vorinstalliert wie ein mächtiges Menüsystem, mit dessen Ausgabe man alle Arten von (Menü-)Listen überall auf der Seite integrieren kann.
Wer für ein Webprojekt ein CMS mit der Möglichkeit einer sehr fein granulierten Rechtevergabe benötigt, sollte MODx zumindest mit in die engere Auswahl einbeziehen. Vorstellbar sind hier Websites für kleine und mittelständische Firmen oder Sportvereine. Selbstverständlich beschränkt es sich nicht darauf.
Wie andere CMS auch setzt MODx PHP und eine MySQL-Datenbank voraus. Ferner htaccess-Zugriff, um benutzerfreundliche URLs anbieten zu können. Benutzerfreundliche URLs werden dann im Managerbereich aktiviert.
Templates, Chunks und Snippets
Die vorhandenen Templates, Chunks und Snippets sind – soweit ich sie testen konnte und eingesetzt habe – valide. Werden eigene HTML-Templates sauber und semantisch sinnvoll geschrieben, so wird auch der am Browser ausgegeben HTML-Code sauber und valide sein.
Chunks (HTML-"Brocken") können beliebig angelgt und per Platzhalterprinzip eingesetzt werden. Beim "AboutMe"-Chunk gibt der Autor einer Website zum Beispiel schlicht ein paar Kleinigkeiten über sich preis.
PHP ist in Chunks nicht erlaubt, denn dafür gibt es die Snippets. Snippets sind also PHP-Schnippsel. Hier findet man z.B. die verschiedene Menüs, z.B. "DropDown" (in der Vorgängerversion) und nun standardmäßig "Wayfinder". Mehr Snippets für alle Gelegenheiten gibts als Download, zum Beispiel Bildergalerien wie die MaxiGallery (Beispiele auf der Entwicklerseite).
Alle Chunks und Snippets sind sehr umfangreich konfigurierbar und werden natürlich per CSS dem Layout der Site angepasst.
Schlichte oder aufwendige Menüs können ganz nach Geschmack und Gutdünken abgebildet und eingesetzt werden. Auf muddydogpaws.com wird bspw. demonstriert, wie das MODx-Menü-Snippet "Wayfinder" mit ausgesuchten CSSPLAY-Menüs von Stu Nicholls eingesetzt werden kann.
Im Detail
MODx wird in der Version 0.9.5 mit einer Auswahl von modernen Templates geliefert. Jedoch ist es ebenso einfach, eigene HTML-Vorlagen zu schreiben und zu integrieren. Eine statische "reine" HTML&CSS-Webpräsenz lässt sich sehr leicht in eine dynamische Site mit allerhand modernen Features wie Kommentarfunktionen für einzelne Seiten, Einzel- und Gruppenblogs, Lightbox-Fotogalerien usw. verwandeln.
Dem Einsatz von anderen Frameworks (z.B. YAML) steht nichts im Wege.
Bilder einzusetzen, Alternativtexte zu vergeben, das Bild gleich als Link festzulegen und die Ausrichtung des Bildes im Text sind ein Kinderspiel. Selbst unerfahrene Endbenutzer kommen damit sehr schnell zurecht.
Eine klar strukturierte, wirklich weiterhelfende Suchfunktion ist Bestandteil und kann über das Snippet "FlexSearchForm" realisiert werden. Bei gescheiterter Suche bekommt der User eine Seite mit den eventuellen Treffern angezeigt, oder zur weiteren Suche ein Inhaltsverzeichnis und die Möglichkeit über ein Formular eine Anfrage an den Site-Betreiber zu starten.
Für die Pflege der Inhalte hat in der Standardversion 0.9.5 "TinyMCE" den "FCK"-Editor abgelöst. Inhalte können darüber hinaus mit dem Modul "QuickEdit" im Frontend editiert werden.
Weitere Module und PlugIns stehen zum Download bereit, alle Module sind optional um den Core schlank zu halten.
Eine vollständige Meta-Tag- und Keywordkontrolle machen es leicht, jede einzelne generierte Seite speziell anzupassen. Meta-Tags und Keywords werden dabei vom Administrator zentral generiert und verwaltet, und vom Benutzer nach Bedarf eingesetzt.
Ausgefeiltes Rechtemanagement
Es gibt keine Haupt-, Neben- und sonstwie-vorher-festgelegte-Benutzer(gruppen). Das MODx-Rechtesystem funktioniert etwas anders. In diesem Punkt dürfte sich MODx speziell von anderen CMS abheben.
Grundlegend wird erst einmal zwischen Webbenutzern und Managerbereich-Benutzern unterschieden.
- Man legt eine "Benutzerrolle" fest. Und gibt dieser Rolle die Rechte, die sie haben soll.
- Als nächstes überlegt man sich, wie die Dokumente auf der Site gruppiert werden (z.B. Produkt, Support, Verwaltung….).
- Man erstellt die Benutzergruppen.
- Benutzergruppen werden mit den dazugehörenden Dokumenten verknüpft.
- Man legt Benutzer fest, jeder Benutzer kann zu mehreren Benutzergruppen gehören, aber es kann ihm nur eine Rolle zugewiesen werden.
Nochmal einfacher:
Rollen weisen Rechte zu – was der Benutzer tun darf.
Den Benutzergruppen wird wird zugewiesen, mit welchen Dokumenten die Mitglieder der Gruppe arbeiten dürfen, aber jeder einzelne Benutzer darf nur das tun, was seine Rolle erlaubt.
Mit diesem System kann man selbst feinstgranulierte Rechte vergeben. Genauer und spezieller gehts kaum.
Negativ:
Englischkenntnisse sind Voraussetzung. Alle Inhalte werden in Englisch ausgeliefert. Man muss sich also in den mitgelieferten Templates, Chunks und Snippets auf die Suche begeben, den englischen durch deutschen Text für das Frontend zu ersetzen. Das ist nicht schwer, denn sämtliche Bausteine sind sehr gut kommentiert.
Der Managerbereich ist nicht valide – gut, mit dem Manko kann man leben, solange es der Endbenutzer nicht muss.
Kenntnisse in PHP sind Voraussetzungen für die Administration, ohne gehts zwar auch, aber richtig ausreizen kann man MODx nur, wenn man in der Lage ist, in den Quellcode einzugreifen.
Noch in den Kinderschuhen stecken die deutsche Nutzergemeinde, das deutsche Forum und das deutsche Wiki.
Im Managerbereich ist eine Aktivierung von JavaScript erforderlich, im Frontend funktioniert die Site natürlich auch ohne JS.
Fazit
MODx sollte man sicher einmal ausprobieren, wenn man bei anderen CMS an Grenzen stößt. Die Entwicklergemeinde ist ständig dabei neue Module, Snippets und Chunks zu schreiben und bereitzustellen.
MODx liefert barrierearmen, validen Code, sofern der Webdesigner in der Lage ist solchen zu schreiben.
Dieses CMS sollte wie jedes andere von einem erfahrenen Webdesigner eingerichtet und administriert werden. Danach kann jeder, der je ein Schreibprogramm bedient hat und weiß, wie man einen Rechner anschaltet, Inhalte einpflegen und verwalten.
Hin und wieder sollte jedoch auch der Admin mal wieder ein Auge auf die Seiten werfen. Denn nur so kann man die gelegentlichen kleinen Schwächen des Seiteneditors im Managerbereich wieder ausmerzen, wenn dieser Editor bspw. den Code für eine verschachtelte Liste mit kleinen Fehlern ausgibt. Sicher hat noch kein Browser Probleme damit und leer gelassene Tags stellen kaum Barrieren dar, aber schön ist es eben nicht.
Kommentare
Herr Voß
am 02.03.2007 - 11:08
Ich möchte empfehlen, dass Du Dir mal PostNuke anschaust - und möglichst nicht die stabile .764 sondern den Milestone 3 der Version .8 - Postnuke setzt schon seit Jahren auf validen Output, so dass schon weite Teile der .7er Serie xHTML ausliefern konnten. Erst der komplett Rewrite zur .8 macht es möglich, dass auch das letzte Stückchen HTML per Template beeinflußt wird.
PostNuke setzt dabei konsequent auf WebStandards - nicht nur bei der Ausgabe, sondern auch bei den "Innereien": ADoDB, Smarty-Templating, MagpieRSS, Prototype, Scriptaculous, usw.
Die umfangreiche .8-API ermöglicht das effiziente Erstellen eigener Module, die ebenso einfach untereinander verknüpft werden können. Neben der API-Ebene bieten sich hier vor allem auch die Hooks an. Transform-Hooks verändern die Inhalte andere Module durch einfache Aktivierung. So können Begriffe zum Beispiel automatisch verlinkt oder als Abkürzung ausgezeichnet werden.
Mit dem All-Round-Modul "Pagesetter" kann man sich einfache Content Module selbst erstellen indem man sich die nötigen Datenbankfelder einfach zusammenklickt und die Aus- und Eingabetemplates generieren lässt.
Noch ein paar Infos
Postnuke.com
Beate
am 02.03.2007 - 11:44
Ich beschäftige mich erst seit ein paar Tagen mit MODx - was mich immer abgeschreckt hat, war das frühere Backend-Theme, das wie ein Windows Explorer aussieht. Daher hätte ich die Screenshots mit dem neuen Theme gemacht, das ist IMHO viel ansprechender. Ansonsten schöne Übersicht über MODx.
Sylke Wienold (Autor)
am 02.03.2007 - 12:03
Hallo Beate, die Kritik ist berechtigt. Allerdings empfand ich das vorige Backend übersichtlicher. Wahrscheinlich, weil ich einfach daran gewöhnt war ;)
Ansgar Hein (Webkraut)
am 03.03.2007 - 12:35
ModX steht schon eine Weile auf der Liste der Content Management Systeme, die ich mir genauer ansehen will und jetzt auch werde. Bei einem Schnelltest auf OpensourceCMS.com sind mir ein paar Dinge aufgefallen, die sehr schön gelöst sind (schicke Oberfläche, gute und Kontextnahe Hilfen, aufgeräumt), aber leider auch einige Fragezeichen bzw. negative Aspekte. Allem voran die proprietäre Templating-Sprache - hier gibt es gerade im PHP-Bereich so gute "De-facto"-Standards, dass ich mich frage, warum ich noch eine weitere lernen soll. Mehr kann ich dazu aber nicht sagen, zumindest nicht auf die Schnelle.
Danke aber für die interessante Vorstellung.
Stefan
am 06.03.2007 - 18:15
Hi,
ich nutze ebenfalls Modx auf meinen Seiten und finde es ein gelungenes und vorallem einfach zu bedienendes CMS.
Rainer Schlegel
am 14.03.2007 - 15:48
Hallo Sylke,
habe mir erlaubt, auf Deinen Artikel im modx forum hinzuweisen. Ich hoffe, meine (in grausamem) Englisch geschriebene Kurzfassung ist ok?
modxcms.com/forums/index.php/topic,13014.0.html
Ich nutze selbst modx und bin derzeit wieder an Projekten damit dran. Wenn man sich (relativ schnell) eingewöhnt hat, ist es ein gutes Arbeiten.
Florian
am 10.04.2007 - 10:21
Schöner ausführlicher Artikel,
ich habe vor einer Weile eine Podcast-Folge dem MODx-CMS gewidmet. Auf Gefagen im Netz könnt Ihr euch das gerne mal anhören.
Leider muss ich feststellen, das seit einer Weile kaum noch etwas passiert, was den Kern des Systems betrifft. Die Community ist fleißig am Snippets und PlugIns stricken, doch die Entwickler lassen etwas auf sich warten. Wenigstens ist mittlerweile die Dokumentation etwas fortgeschrittener.
Christian
am 26.04.2007 - 21:28
Also ich finde ModX ist eines der übersichtlichsten,mächtigsten und gleichzeitig noch einfach zu bedienenden System die ich kenne. Ich habe mir in den vergangenen Monaten etliche CMS angesehen. Diverse Nuke ableger (die wie ich finde extrem unübersichtlich sind, zudem ist das Template System irgendwie kompliziert) über Typo3 (man wird einfach nur erschlagen von den Funktionen) und diversen anderen Systemem. ModX hat mich vom ersten Augenblick an überzeugt. Ich kann modX nur jedem empfehlen.
Marc
am 12.06.2007 - 17:31
Hat vielleicht jemand einen Tip zur Installation von modx, bei mir werden keine Tabellen angelegt, der Test vorher klappt einwandfrei...
Sylke Wienold (Autor)
am 12.06.2007 - 18:26
Hi Marc, poste Dein Problem doch bitte mal mit einer genaueren Beschreibung ins Forum
Marc
am 15.06.2007 - 04:56
Hi Sylke,
vielen Dank für den Tip, hab´s gefunden, ich war nicht der erste:
install error
Kuno Floez-Mausegat
am 18.06.2007 - 07:11
Wichtig finde ich zu sagen, dass man eben nicht in den Quelltext eingreifen muss, sondern über eigene Snippets etc. ein komplett angepasstes System erzeugen kann, ohne vom Upgrade-Pfad abgeschnitten zu sein.
Also: man sollte PHP können um das System voll auszureizen, aber man muss eigentlich nie nie nie den Quellcode von modx hacken, wie bei anderen Systemen manchmal nötig.
claudia
am 26.05.2008 - 21:34
hallo sylke,
ich habe mir geraden einen ersten Überblick über Modx verschafft und bin begeistert. Allerdings stellt sich für mich die Frage, welche Möglichkeiten ich habe ein Shopsystem anzubinden. Dies sollte sich natürlich nahtlos integrieren lassen. Bisher habe ich nur FoxyCart gefunden. Gibt es noch andere Möglichkeiten?
spackko
am 02.07.2008 - 15:36
es gibt noch treasure-chest, aber an 'richtige' Shop-System kommt das noch nicht heran. Dafür ist ein CMS allerdings auch nicht gedacht.
Die Kommentare sind geschlossen.