CMSMS 1.11 "Galapagos" veröffentlicht

Mit der neuen Version 1.11 halten weitreichende und wichtige Änderungen in CMS Made Simple Einzug. Hier die großen Änderungen im Detail.

Smarty 3

Die größte Änderung in CMSMS 1.11 stellt wohl die Verwendung der Template-Engine Smarty in der Version 3 dar, welches neue Funktionalitäten wie verbessertes Parsing und eine erweiterte Kontrolle über die Zwischenspeicherung mit sich bringt.

In Zusammenarbeit mit den Smarty-Entwicklern wurde Smarty 3.1.10 anders als in den Vorversionen unmodifiziert in CMSMS implementiert.

Die Zwischenspeicherung via Smarty ist in CMSMS 1.11 sehr flexibel umgesetzt. So können ganz individuell ganze Seite oder aber auch nur Teile davon zwischengespeichert werden. Dies ist fast so gut wie die komplette Zwischenspeicherung einer Seite, ohne jedoch die Vorteile eines dynamischen CMS zu verlieren.

Die meisten Plugins der Version 1.11 sind "zwischenspeicherbar". Das heisst, die Ergebnisausgabe des Plugins wird auf der Seite gespeichert und das Plugin nicht erneut ausgeführt.  Die Ausnahme bilden hierbei die Plugins, die mit {content*} beginnen - deren Ausgabewerte werden nicht gespeichert.

Das News-Modul wurde dahingehend überarbeitet, die Fähigkeiten von Smarty 3 bezüglich der Zwischenspeicherung besser auszunutzen, und damit gleichzeitig Modulentwicklern ein Beispiel zu liefern, wie die neuen Möglichkeiten eingesetzt werden können.

Der Einsatz von Smarty 3 bringt aber auch einige Nachteile mit sich. So ist die erstmalige Kompilierung und Ausgabe einer einfachen CMSMS-Seite spürbar langsamer. Dies ist der Komplexität des Smarty 3 Lexer / Parser geschuldet und ist eine bekannte Einschränkung der Template-Engine.

Wie auch immer, sobald die Smarty-Zwischenspeicherung aktiviert ist, kommt es zu einer deutlichen Verbesserung der Performance.

Verbesserungen im Bereich Sprache

Für eine bessere Flexibilität wurde der Mechanismus zur Spracherkennung in eine eigene Klasse ausgelagert. Die NLS (Native Language Support) Daten enthalten jetzt Sprach- und Kodierungsinformationen, so dass die Informationen aus den Konfigurationsvariablen config['locale'] und config['encoding'] nur noch für nicht-englischsprachige Webseiten optional sind. Außerdem wurde das Verhalten dieser Konfigurationsoptionen geändert.

Der Mechanismus zur Spracherkennung wird jetzt erst dann aufgerufen, nachdem die Module initialisiert wurden. In Verbindung mit der neuen Methode CmsNlsOperations::set_language_detector() kann festgelegt werden, wie die Erkennung der aktuellen Sprache der Webseite erkannt werden soll (über Session-Variablen, Cookies, eine Variable in der URL oder Benutzer- und Moduleinstellungen). Damit lassen sich mehrsprachige Module innerhalb CMSMS realisieren.

Verbesserungen im Bereich CSS

Jedes Stylesheet kann jetzt Media-Queries enthalten. Damit vereinfacht sich die Erstellung responsiver Webseiten. Über einige neue Konfigurationsvariablen kann das Verzeichnis festgelegt werden, in dem die erzeugten Stylesheets gespeichert werden.

Neues Administrations-Theme

Der Webdesigner (und Mitglied des Entwickler-Teams) Goran Ilic hat für die Administration dieser CMSMS-Version ein neues HTML5-basiertes Theme mit dem bezeichnenden Namen "OneEleven" erstellt. Es ist responsiv ausgelegt vollständig Smarty-gesteuert. Es wurde auf verschiedenen Tablets getestet. Jedoch werden Smartphones mit niedriger Bildschirmauflösung offiziell nicht unterstützt.

Das alte Administrations-Theme "default" wird nicht mehr unterstützt. Sie sollten Ihre Administration daher auf "NCleanGrey" oder "OneEleven" umstellen.

Neues Frontend-Theme

Auch im Frontend ist ein neues Theme namens "Simplex" hinzugekommen. Dieses dient unter anderem der Demonstration der Funktionalitäten von HTML5 und CSS3 in Verbindung mit CMSMS. Es ist geplant, auch alle anderen mitgelieferten Themes durch HTML5-basierte Beispiele zu ersetzen.

Dateien via "Drag and Drop" hochladen

Zusammen mit dem neuen Administrations-Theme wurden auch die in CMSMS verwendeten jQuery und jQuery.ui Versionen aktualisiert. Damit einhergehend ist nun auf der Startseite ein Bereich enthalten, über den Dateien via Drag and drop hochgeladen werden können (funktioniert in den meisten nicht-IE Browsern). Sie können nun die Dateien direkt vom Desktop Ihres Computers in diesen Bereich ziehen und dann anschließend aus dem WYSIWYG-Editor heraus auswählen. Bei Bedarf kann das im OneEleven Administrations-Theme verwendete Verzeichnis, in welches die Dateien hochgeladen werden, geändert werden.

Verbessertes "Lazy Loading" der Module

Die Fähigkeit von Modulen, nur bei Bedarf geladen zu werden, wurden zur Verbesserung der Webseiten-Performance erweitert. Dafür wurde auch die Routing-Funktionalität überarbeitet.

Erweitertes Systemprotokoll

Für Webseiten wird die Protokollierung, wer wann was im System geändert hat, immer wichtiger. Deswegen wurden alle wichtigen Teile des Systems daraufhin geprüft, ob sie auch einen entsprechenden Eintrag im Systemprotokoll hinterlassen.

System-Wartung

Mit der neuen Systemwartung können Sie jetzt Aufgaben wie die Reparatur und Optimierung der Datenbank, die Reinigung des Zwischenspeichers u.ä. periodisch ausführen lassen.

Erweiterte Inhaltsklasse

Um die Performance zu verbessern und den Grundstein für die künftig geplante Entwicklung zu legen, wurden die Eigenschaftsklassen des Inhaltsobjekts überarbeitet. Die Methoden des Inhaltsobjekts wurden als public, protected oder private gekennzeichnet.

Bislang erfolgte die Erkennung von Inhaltsblöcken bei der Bearbeitung von Inhaltsseiten über Regular Expressions. Jetzt wird dafür Smarty verwendet. Dies erhöht die Flexibilität und verringert die Fehleranfälligkeit beim Bearbeiten der Seiten-Templates. Außerdem können jetzt Inhaltsblöcke in untergeordnete Templates eingefügt werden, die dann via {include} oder über Globale Inhaltsblöcke geladen werden, was die Flexibilität bei der Wiederverwendbarkeit von Templates erhöht.

Beim Hinzufügen von Inhaltsblöcken kann jetzt ein Tab festgelegt werden, in dem der Textbereich des Inhaltsblocks beim Bearbeiten der Seite(n) angezeigt werden soll.

MenüManager

Der MenüManager hat jetzt eine Aktion für die Brotkrumen-Navigation. Der breadcrumbs Tag wird daher nicht mehr länger unterstützt.

Außerdem hat der MenüManager jetzt eine neue Aktion "items". Diese ersetzt den Parameter "items=" aus den vorherigen Versionen. Damit können jetzt Seiten mit den vorgegebenen Seiten-Aliasen und deren untergeordneten Seiten in der Navigation ausgegeben werden.

News-Modul

Das News-Modul verwendet jetzt die Smarty-Zwischenspeicherung, so dass in der Zusammenfassungsansicht keine weiteren Datenbankabfragen mehr erforderlich sind.

Desweiteren werden für alle in der Zusammenfassungsansicht angezeigten Artikel die Feldinformationen vorausgeladen, um die erforderlichen Datenbankanfragen zu reduzieren und die Performance deutlich zu erhöhen. Auch die Information zur Kategorie wird nun vorausgeladen und zwischengespeichert, und steht sowohl in der Zusammenfassungs- als auch der Detailansicht zur Verfügung.

Weitere Änderungen

  • Beim Modulexport via XML wird jetzt nur die englische Hilfe exportiert.
  • Bei der Seitenauflistung steht jetzt mit der Eigentümer-Änderung eine weitere Massenaktion zur Verfügung.
  • Erweiterte Benutzereinstellungen.
  • Beim Hinzufügen eines neuen Benutzers kann für diesen der voreingestellte WYSIWYG-Editor festgelegt werden.
  • Die individuellen Seiten-URLs können jetzt eine Erweiterung enthalten.
  • Die Konfigurationsvariablen "output_compression", "process_whole_template", "use_adodb_lite" und "max_upload_size" wurden entfernt.
  • Der Support für Postgres wurde entfernt.
  • Das Google_search Plugin wurde entfernt.
  • Die Plugins {menu}, {news}, {search} und weitere wurden in die Modulverzeichnisse verschoben.
  • Einige Seiten der Administration wurden neu organisiert.

Für eine vollständige Liste aller Änderungen lesen Sie bitte die Datei CHANGELOG.txt im /docs Verzeichnis Ihrer Installation.

Zurück

Impressum  ·  Datenschutz  ·  Kontakt  ·  Spenden  ·  Inhaltsverzeichnis

© Copyright 2006-2018 by Andreas Just