Orchard ist ein quelloffenes, auf dem .Net-Framework basierendes Content-Management-Framework und Content-Management-System, das unter dem Dach der Microsoft-Stiftung Outercurve Foundation entwickelt wird.

Orchard

Orchard 1.4 Dashboard
Orchard 1.4 Dashboard
Basisdaten

Hauptentwickler Orchard Steering Committee
Entwickler Outercurve Foundation
Aktuelle Version 1.10.3[1]
(28. Februar 2019)
Betriebssystem Windows, Windows Azure
Programmier­sprache C#, ASP.NET, ASP.NET MVC
Kategorie Content-Management-Framework, Content-Management-System, Online-Community- und Weblog-Software
Lizenz BSD-Lizenz
deutschsprachig ja
orchardproject.net Orchard auf Github

Das ausgegebene Ziel des Orchard-Projekts ist es, das Erstellen von individuellen .NET-basierten Anwendungen zu ermöglichen, wiederverwendbare Komponenten für diesen Zweck bereitzustellen sowie eine Community um das Projekt aufzubauen.[2]

Technik und Architektur

Bearbeiten

Orchard wird vollständig in C# für die .NET-Platform entwickelt. Da großer Wert auf höchstmögliche Flexibilität und Erweiterbarkeit gelegt wurde, verfügt Orchard über eine ausgefeilte Architektur, die stark von Dependency Injection Gebrauch macht. Zudem wird auf ASP.NET MVC in Verbund mit der Razor-Syntax anstatt auf klassische ASP.NET Webforms zurückgegriffen. Dies ermöglicht auch die problemlose Erzeugung von validem (X)HTML. Die Verwendung der neuesten Technologien und Funktionen von .NET bedeutet jedoch auch, dass Orchard ab Version 1.8 das .NET Framework in Version 4.5 und als Webserver IIS 7 oder neuer erfordert.

Die Entwickler greifen auf eine ganze Reihe von quelloffenen Bibliotheken zurück, um die Funktionalitäten umzusetzen. Dazu gehören u. a. Autofac als IoC-Container, NHibernate zur Datenbankabstraktion und Lucene.NET zur Integration der Suchfunktion.

Orchard unterstützt in der Grundinstallation zurzeit die Datenbanken Microsoft SQL Server, SQL Server Compact Edition und MySQL beziehungsweise SQL Azure unter Windows Azure.

Unter dem Namen Orchard Core wird zurzeit eine Neuimplementierung des CMS auf Basis von ASP.NET Core entwickelt. Ein Release Candidate soll im September 2017 zur Verfügung stehen.[veraltet][3]

Erweiterbarkeit

Bearbeiten

Aufgrund der durchdachten Architektur ist eine Erweiterung Orchards auf verschiedenen Ebenen möglich. Jede Erweiterung ist dabei ein Modul, welches in der Orchard-Gallery veröffentlicht werden kann. Grundsätzlich ist jedes Modul eine ASP.NET-MVC-Anwendung, die eine oder mehrere Arten von Modul-Typen enthalten kann.

Mögliche Arten von Modulen sind:

Das Erscheinungsbild einer mit Orchard realisierten Website, also Design und Layout, lässt mit sogenannten Themes steuern. Diese enthalten typischerweise CSS-Stylesheets und JavaScript, ASP.NET MVC Razor Templates, die aus HTML und Code in Razor-Syntax bestehen sowie eine Placement.info-Datei[4], die Informationen darüber bereithält, an welcher Stelle eines Layouts welcher Inhalt angezeigt wird.

Orchard bietet die Möglichkeit Widgets zu entwickeln und in die Seite einzubinden. Widgets sind kleine Bausteine, die beispielsweise Schlagwörter zu einem Blog-Post, Twitter-Feeds oder ähnliches anzeigen. Widgets bilden entweder Inhalte auf der Webseite ab oder rüsten Layout-Funktionen nach.

Extension Module

Bearbeiten

Extension Module enthalten Funktionen, die das CMS im Hintergrund antreiben. Diese haben keinen direkten Einfluss auf das Erscheinungsbild einer Website oder verfügbare Funktionen, sondern stellen grundlegende Methoden zur Verfügung, die in der Regel in den Bereich der Infrastruktur des Systems fallen und durch ein Modul genutzt werden.

Content Module

Bearbeiten

Content Module sind Erweiterungen, die sowohl die Logik für das Anlegen, Anzeigen und Bearbeiten als auch die nötigen Informationen für die Darstellung von Inhalten bereitstellen.

Versionen

Bearbeiten
Version Veröffentlichung
Zukünftige Version: 1.11 angekündigt für das 4. Quartal 2016
Aktuelle Version: 1.10.1 11. Mai 2016
Ältere Version; nicht mehr unterstützt: 1.10 18. März 2015
Aktuelle Version: 1.9.3 1. Februar 2016
Ältere Version; nicht mehr unterstützt: 1.9.2 15. Oktober 2015
Ältere Version; nicht mehr unterstützt: 1.9.1 30. Juni 2015
Ältere Version; nicht mehr unterstützt: 1.9 5. Mai 2015
Aktuelle Version: 1.8.2 5. Mai 2015
Ältere Version; nicht mehr unterstützt: 1.8 28. März 2014
Ältere Version; nicht mehr unterstützt: 1.7 30. Juli 2013
Ältere Version; nicht mehr unterstützt: 1.6 27. Oktober 2012
Ältere Version; nicht mehr unterstützt: 1.5 18. Juli 2012
Ältere Version; nicht mehr unterstützt: 1.4 1. März 2012
Ältere Version; nicht mehr unterstützt: 1.3 4. Oktober 2011
Ältere Version; nicht mehr unterstützt: 1.2 13. Juni 2011
Ältere Version; nicht mehr unterstützt: 1.1 11. April 2011
Ältere Version; nicht mehr unterstützt: 1.0 17. Januar 2011
Ältere Version; nicht mehr unterstützt: 0.8 (Beta) 25. Oktober 2010
Ältere Version; nicht mehr unterstützt: 0.5 (Beta) 2. August 2010
Legende:
Alte Version
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

Aus Orchard hervorgegangene Projekte

Bearbeiten

Bei der Entwicklung von Orchard entstanden sogenannte Clays. Clays sind dynamisch typisierte, hierarchisch aufgebaute C#-Objekte, die gegenüber der ExpandoObject-Klasse des .NET-Frameworks einige Vorteile bieten. In Orchard werden Clays u. a. verwendet, um die Inhalte einer Webseite zu speichern.[5][6] Da die Entwickler einen allgemeinen Nutzen in dem Konzept von Clays erkannten, entschieden sie sich, Clay auszugliedern und als separates Projekt verfügbar zu machen. Mit Veröffentlichung der Version 1.7 wurde zu Gunsten der Leistung auf die Verwendung von Clay verzichtet.[7]

Lizenz und Unabhängigkeit von Microsoft

Bearbeiten

Orchard steht unter der New BSD License, kann also ohne Einschränkungen unentgeltlich genutzt, weitervertrieben und geändert werden, ohne dass Änderungen veröffentlicht werden müssen. Der Quellcode ist öffentlich in der Quellcodeverwaltung des Projektes zugänglich.[8]

Zwar wurde das Projekt von Microsoft initiiert und wird aktiv durch Angestellte von Microsoft entwickelt, jedoch liegen die Rechte an dem Projekt bei der Microsoft eigenen, unabhängigen Open-Source-Stiftung Outercurve Foundation.

Eine Beteiligung der Community an der weiteren Entwicklung des Systems ist ausdrücklich erwünscht und wird aktiv unterstützt. Die Kontrolle über das Projekt liegt in den Händen des Orchard Steering Committees, welches sich zurzeit aus fünf Personen zusammensetzt, die durch die Community gewählt wurden.[9] Eines der fünf Mitglieder des Steering Committees ist zurzeit Microsoft-Mitarbeiter.[10]

Literatur

Bearbeiten
  • John Zablocki: Orchard CMS: Up and Running (englisch). O’Reilly & Associates, Sebastopol, CA 2012, ISBN 978-1-4493-2021-8

Videotrainings

Bearbeiten
Bearbeiten

Einzelnachweise

Bearbeiten
  1. Release Notes: Orchard 1.10.3. Orchard Project, 28. Februar 2019, abgerufen am 14. November 2020 (englisch).
  2. Ziele des Orchard-Projekts Orchard-CodePlex-Webseite.
  3. Orchard Core Roadmap. In: GitHub. Abgerufen am 25. Juli 2017 (englisch).
  4. Understanding the placement.info File Orchard Dokumentation
  5. Clay: malleable C# dynamic objects – part 1: why we need it Entwickler-Blog von Bertrand Le Roy
  6. Clay: malleable C# dynamic objects – part 2 Entwickler-Blog von Bertrand Le Roy
  7. Änderungsprotokoll zur Version 1.7 Orchard Projekt-Webseite
  8. Orchard Quellcode Orchard Quellcodeverwaltung Webinterface
  9. Ankündigung zur Wahl des Steering Committees Orchard Community Forum
  10. Die Mitglieder des Orchard Steering Committees (Memento des Originals vom 12. August 2015 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/orchardproject.net Orchard Projekt-Webseite