OpenCms
OpenCms ist ein in Java und XML realisiertes Content-Management-System (CMS) für die Gestaltung und Bearbeitung von Websites. Das aus Open-Source-Komponenten aufgebaute System kann in einer Vielzahl von verschiedenen Infrastrukturen betrieben werden. Es wird als Freie Software unter der LGPL veröffentlicht. Seit der Erstveröffentlichung im Februar 2000[3] erfolgt eine kontinuierliche Weiterentwicklung durch die Firma Alkacon Software GmbH und der OpenCms-Community.
OpenCms | |
---|---|
Der OpenCms Sitemap-Editor | |
Basisdaten | |
Entwickler | Alkacon Software |
Aktuelle Version | 16.0[1] (2. Oktober 2023) |
Betriebssystem | plattformunabhängig |
Programmiersprache | Java[2] |
Kategorie | Content-Management-System |
Lizenz | LGPL (Freie Software) |
deutschsprachig | ja |
www.opencms.org |
Verwendung
OpenCms wird bei einer Vielzahl von Unternehmen aus verschiedenen Branchen für die Verwaltung von Websites und/oder Intranets eingesetzt. Eine große Zahl von Dienstleistern bieten zum Teil auch kommerzielle Unterstützung und Support-Verträge für OpenCms an.
Bedienung
Die Bedienung von OpenCms erfolgt über einen beliebigen Webbrowser. Der Redakteur arbeitet in OpenCms direkt auf der angezeigten Webseite, eventuell notwendige Dialoge werden dynamisch darüber eingeblendet. Inhalte auf einer Seite können mit Drag and Drop modifiziert werden[4]. OpenCms bietet weiterhin die Möglichkeit, mittels des sogenannten Inline Editing Texte direkt auf der Webseite zu bearbeiten. Dabei ist ein nahtloser Wechsel in einen formularbasierten Editor für den gleichen Inhalt jederzeit möglich[5]. In der Regel können Redakteure nach einer kurzen Einweisung in OpenCms eigenständig Inhalte bearbeiten.
Die Struktur einer OpenCms Website wird über den Sitemap-Editor verwaltet, mit dem sich neue Seiten anlegen bzw. vorhandene Seiten in der Navigation umstellen lassen. Inhalte werden in Galerien abgelegt und können auf verschiedenen Seiten oder Websites wiederverwendet werden. Weiterhin bietet OpenCms noch einen speziellen Backendmodus (Workplace) für administrative Aufgaben wie z. B. die Benutzerverwaltung. Ab der Version 9.5 ermöglicht OpenCms außerdem die Erstellung von Seitenvorlagen (Templates) ohne Programmierung[6].
Aufbau
OpenCms läuft auf der Java-Plattform als Servlet. Es baut auf einer Reihe von Open Source Komponenten auf, viele davon stammen von der Apache Foundation. Das Benutzerinterface wurde mit Vaadin und dem Google Web Toolkit entwickelt. Inhalte werden in OpenCms in einem datenbankbasierten Repository abgelegt, wobei MariaDB, MySQL, PostgreSQL, HSQLDB, Oracle, MSSQL und DB2 direkt unterstützt werden[7]. Der Zugriff darauf erfolgt über CMIS, WebDAV, eine SMB Netzwerkfreigabe, sowie das eigene Web-Interface. Text-Inhalte in OpenCms werden über ein XML Schema definiert. Das Benutzerinterface für Redakteure erstellt XML-Dateien aus diesen Schemas, welche im Repository abgelegt werden. Ein Template-Mechanismus basierend auf JavaServer Pages erzeugt dann Webseiten auf der Basis des XML.
Erweiterungen
OpenCms lässt sich über sogenannte Module mit zusätzlichen Funktionen erweitern. Es stehen Module für spezielle Templates, dynamische Funktionen und Ähnliches bereit. Ein Großteil der Module steht kostenfrei zur Verfügung. Durch die Module kann OpenCms universell eingesetzt werden und so sind technische Erweiterungen, die der Entwicklung auf diversen Plattformen oder Technologien, wie Maven, IntelliJ[8] oder NetBeans[9] dienen ebenso verfügbar wie die Möglichkeit des inhaltlichen Ausbaus über Galerie- oder Shop-Plugins[10].
Versionen
OpenCms wird seit dem Jahr 2000 kontinuierlich weiterentwickelt. Aktuell wird alle 6 Monate, im April und Oktober, eine neue Version veröffentlicht. Die Versionsverwaltung des Quelltexts von OpenCms erfolgt seit Juli 2011 mittels Git auf GitHub[11], davor in CVS.
Nachfolgend eine Übersicht über die bisher veröffentlichten Hauptversionen[12]:
Version | Veröffentlichung | Wichtigste neue Funktionen |
---|---|---|
4.0 | 24.02.2000 | Online / Offline Workflow, WYSIWYG-Editor für Webseiten, Explorer, Benutzermanagemenet |
5.0 | 05.05.2002 | Seitentemplates in JSP mit eigener <cms:> Tag-Library, Erweitertes Caching und statischer Export von Webseiten |
5.3 | 11.12.2003 | Integrierte Volltextsuche mit Lucene, Direktes bearbeiten von angezeigten Webseiten |
6.0 | 30.06.2005 | Neue Workplace-Benutzeroberfläche, Erstellen von XML Inhalten basierend auf XSD, Verwaltung mehrerer Websites |
6.2 | 31.03.2006 | Integrierte Bildskalierung, Vergleich von Dokumentenversionen |
7.0 | 04.07.2007 | WebDAV Unterstützung, Automatisches Linkmanagement, Zuordnung von Kategorien für beliebige Inhalte |
7.5 | 15.06.2009 | Inhalts-Galerien, Zugriff auf Inhalte in JSP mittels Expression Language |
8.0 | 08.05.2011 | Erweiterte Benutzeroberfläche mit Drag and Drop von Elementen im Seiten-Editor und Sitemap-Editor, Unterstützung für mobile Endgeräte |
8.5 | 24.09.2012 | „Inline“ Editor für Webseiten, Integration der Solr Suchmaschine, CMIS Unterstützung, Suchmaschinenoptimierungsfunktionen |
9.0 | 08.11.2013 | Unterstützung für unterschiedliche Endgeräte, Zugriff auf OpenCms Repository über ein SMB/CIFS Netzlaufwerk, Site Management Tool, erstes Demo Template basierend auf Bootstrap |
9.5 | 03.11.2014 | Template- und Layout-Erstellung per Drag&Drop mit Nested Containern, User generated Content, PDF-Generierung, Erweiterte Rollen für Editoren, integrierte Rechtschreibprüfung im WYSIWYG-Editor, Verwalten von Galerien, Kategorien und Templates im Sitemap-Editor |
10.0 | 23.03.2016 | Überarbeitete Verwaltungs-Oberfläche, neues Apollo-Template, neuer Datei-Explorer, Identicons für User, direktes Commit von geänderten Templates nach Git, Drag&Drop von Bildern, vereinfachte Solr basierte Inhaltssuche |
10.5 | 15.02.2017 | Lokalisierungs-Werkzeuge zum direkten Vergleich übersetzter Sites Seite-an-Seite, Asset Verbindung erlaubt die native Integration von externen Daten im Editor, Verwendung von Font-Icons in der Benutzeroberfläche |
11.0 | 30.04.2019 |
Überarbeitetes User Interface, „Meta Mappings“ für SEO, neues Mercury-Template, vereinfachtes Erzeugen von Inhalts-Listen durch vordefinierte Solr-Abfragen, Lesezeichen im Explorer, neue Apps für die Verwaltung von Ressource-Typen und Sessions. |
12.0 | 12.10.2021 |
Headless JSON API für REST Abfragen auf Inhalte, stark verbessertes Mercury Template, Template Varianten, aktualisierte WebDAV Implementation. |
13.0 | 13.04.2022 |
Neues Plugin-System, Suche nach Geokoordinaten, Erweiterungen für Template Varianten, verbessertes Mercury Template. |
14.0 | 11.10.2022 |
XML Schema Versionierung mit automatischem Neuschreiben der Inhalte, Zwei-Faktor-Authentifizierung (2FA) im Benutzer Login, Quellcode Widget für mehrzeilige Eingabefelder, Mercury Template auf Bootstrap 5.2 aktualisiert. |
15.0 | 25.04.2023 |
Rollenbasierte Beschränkung für Änderungen der Sitemap Konfiguration, Editor zur Modifikation von Sitemap Attributen für alle Redakteure, neue App "Abfrage Personendaten" findet personenbezogeneDaten im VFS, Mercury Template mit zahlreichen Verbesserungen. |
16.0 | 02.10.2023 |
Neue App "Unbenutzte Inhalte" zum auffinden und löschen von nicht mehr verwendeten Inhalten, individuelle Detailseiten für Kategorien, zurücksetzen des Passworts für alle Redakteure erzwingen, verbessertes Mercury Template. |
17.0 | 09.04.2024 |
Neue App "Datumsuche", exportieren ausgewählter Websites zur Archivierung, verbergen von "sensiblen" Inhalten im Offline-Projekt, Unterstützung für Java LTS 17 und 21, verbessertes Mercury Template. |
Ältere Version; nicht mehr unterstützt Ältere Version; noch unterstützt Aktuelle Version Aktuelle Vorabversion |
Literatur
- Dan Liliedahl, Opencms 7 Development, Packt Publishing, ISBN 978-1-84719-105-2
- Matt Butcher, Managing and Customizing Opencms 6 Websites: Java/JSP XML Content Management, Packt Publishing, ISBN 978-1-904811-76-3
- Matt Butcher, Building Websites with OpenCms, ISBN 978-1-904811-04-6 (bezieht sich auf die veraltete Version 5)
Weblinks
Einzelnachweise
- Release 16.0. 2. Oktober 2023 (abgerufen am 2. Oktober 2023).
- The opencms Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Juli 2018).
- Artikel auf heise.de anlässlich der Veröffentlichung von OpenCms im Februar 2000
- Funktionsbeschreibung Drag&Drop von Inhalten auf der OpenCms Website
- Keynote der OpenCms Days 2012 (siehe Folie 10 für die Funktionen des Editors)
- OpenCms 9.5 Funktionsübersicht
- siehe Abschnitt 'Compatibility with Java versions, Servlet containers and Databases' in den Release Notes der Version 8.0
- OpenCms plugins zur IntelliJ und Maven Integration
- OpenCms plugin zur NetBeans Integration
- Module zur inhaltlichen Erweiterung von OpenCms
- Meldung auf opencms.org zum Wechsel zu GitHub
- Übersicht über alle bisher veröffentlichten OpenCms Versionen in der history.txt auf GitHub