关于OrchardCore

Orchard Core这个开源软件的好处,在这里就不多说了。要能够熟练的使用OrchardCore来建设自己的站点,我们必须对Orchard Core这个软件有一个最基本的了解,下面我们就来看看Orchard Core官方对此的一个说明。

官方介绍:

Orchard Core是一个基于Asp.net Core框架重新开发的OrchardCore CMS,使用Orchard Core这个名称主要是用来区分在此之前的基于.NET Framework框架的一个OrchardCMS版本。

Orchard Core包含两个不同的目标框架:

1、Orchard Core Framework:一个基于Asp.net Core 用来构建多模块,多租户的应用程序框架。

2、Orchard Core CMS:一个构建于Orchard Core Framework框架之上的内容管理系统。这个我们可以从下面解决方案截图的Targets解决方案文件夹可以看出。(具体的讲解在后面)

重要的是注意框架和CMS之间的区别。一些想要开发SaaS应用程序的开发人员会对模块化框架感兴趣。其他那些想要构建可管理网站的人员将专注于CMS并构建模块以增强其网站或整个生态系统。

使用Orchard Core Framework构建软件即服务(SaaS)解决方案

了解Orchard Core Framework在nuget.org上是独立于CMS分发的,这一点非常重要。我们已经在https://github.com/OrchardCMS/OrchardCore上制作了一些示例应用程序。这些示例将指导您如何仅使用Orchard Core框架而不使用任何CMS特定功能来构建模块化多租户应用程序。

我们的目标之一是实现基于社区的托管应用程序生态系统,这些应用程序可以通过模块(例如:电子商务系统,博客引擎等)进行扩展。Orchard Core Framework提供了一个模块化的环境,该环境允许不同的团队在应用程序的不同部分上工作,使得组件可在项目中重复使用。

使用Orchard Core CMS构建网站

Orchard Core CMS是基于ASP.NET Core框架之上完全重写的一个Orchard CMS(用来区分以前基于.NET Framework框架的OrchardCMS版本)。它不仅仅是简单的移植,因为我们希望极大地提高性能并尽可能与ASP.NET Core的开发模型保持一致。

性能表现:当您开始使用Orchard Core CMS时,这可能是最明显的变化。对于CMS来说,这是非常快的。速度如此之快,我们甚至都不关心处理输出缓存模块。给您一个主意,不缓存Orchard Core CMS的速度比前一个版本快20倍。

可移植性:您可以在Windows,Linux和macOS上开发和部署Orchard Core CMS。同时也可以使用提供的Docker镜像。

文档数据库抽象:Orchard Core CMS仍然需要一个关系数据库,并且与SQL Server,MySQL,PostgreSQL和SQLite兼容,但是现在使用的是文档抽象(YesSql),该抽象提供了文档数据库API来存储和查询文档。对于CMS系统,这是一种更好的方法,并且可以显着提高性能。

实时预览:在编辑内容项时,您可以实时查看它在网站上的外观,甚至,在您保存内容之前也是如此。它也适用于模板,您可以在模板中浏览任何页面,以查在键入时检查更改对模板的影响。

Liquid模板支持编辑者可以使用Liquid模板语言安全地更改HTML模板。之所以选择它是因为它既有很好的文档(Jekyll,Shopify等),又非常安全。

自定义查询:我们希望为开发人员提供一种尽可能简单地访问其所有数据的方法。我们为此创建了一个模块,允许您创建自定义的临时SQL和Lucene查询,这些查询可重新用于显示自定义内容或作为API端点公开。您可以用它来创建高效的查询,或将数据公开给SPA应用程序。

部署计划:部署计划是可以包含内容和元数据来构建网站的脚本。现在,您可以包括二进制文件,甚至可以使用它们来将站点从临时工作台远程部署到生产环境。它们也可以成为NuGet软件包的一部分,允许您发布预定义的网站。

可扩展性:由于Orchard Core是多租户系统,因此您可以通过单个部署托管任意数量的网站。然后,一个典型的云计算机可以并行托管数千个站点,其中包括数据库,内容,主题和用户隔离。

工作流程:创建内容批准工作流,对Webhook做出反应,在提交表单时采取措施,以及您希望通过用户友好的UI实施的任何其他流程。

GraphQL:我们提供了非常灵活的GraphQL API,因此任何授权的外部应用程序都可以重用您的内容,例如SPA应用程序或静态站点生成器。

不同的网站建设战略

Orchard Core CMS支持所有主要的网站建设策略:

完整的CMS:在这种模式下,网站使用主题和模板来呈现您的内容,目的是实现很少甚至没有自定义开发。

解耦CMS:除了内容管理后端之外,该网站一开始是空白。您可以使用Razor Pages或MVC操作创建所需的所有模板,并通过内容服务访问内容。

无头CMS:该站点仅管理内容,并且您创建了一个单独的应用程序,该应用程序将使用GraphQL或REST API来获取托管内容。

posted @ 2020-04-09 10:56  Mallie  阅读(1338)  评论(1)    收藏  举报