二十四画生的Blog


        ——开始学习Orchard框架
随笔 - 125, 文章 - 8, 评论 - 1461, 阅读 - 85万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

理解Orchard中的内容管理

Posted on   二十四画生  阅读(7178)  评论(5编辑  收藏  举报
     Orchard作为一个内容管理系统(CMS),内容管理部分当然是其中最核心的东西。在Orchard中的任何数据都可以把它理解为内容(Content)。页面是内容、博客是内容、文章也是内容。整个网站就是由这些不同类型的内容项(Content Item)构成的。对这些不同内容的类型定义就是内容类型(Content Type)。而内容类型则是通过若干个不同的内容部件(Content Part)组成。这些内容部件都是可以跨类型重用的东西,每一个内容部件都实现了从UI层到数据库层的完整封装。正是由于Orchard这种对内容的组织,我们可以很方便的构造出一种新的类型。如:我们需要做一个产品展示页面,只需要定义一个产品类型(Product Type)。在这个产品类型中我们只用定义一个产品特有内容部件(Product Part,包含价格、品牌等信息),并添加一个路由部件(Route Part,可指定相应产品的名称和详情页地址)、一个文本部件(Body Part,可提供一个富文本输入框,用做产品信息描述)即可。此外,我们还可以添加标签部件(Tags Part),评论部件(Comments Part)等来丰富此产品类型。一旦有了这个产品类型的存在,我就可以很方便的通过后台来维护产品内容了。

Orchard中内容组织结构图示意图

Orchard中博文类型的Part分解图

由上图就可以看出一片博文其实是由多个内容部件组成的。

 

Orchard中一些常用的内容部件

Route Part:路由部件,可为内容提供路由支持即可通过指定Url访问相应内容。
Body Part:文本部件,可提供一个富文本编辑器的功能。
Comment Part:评论部件,可提供评论功能。
Tags Part:标签部件,可提供内容的标签定义,实现全站的标签检索功能。
Common Part:通用部件,提供所有者信息。
Publish later Part:延迟发布部件,提供内容延迟发布功能。
 

参考文档:

Orchard中的基本概念:http://www.orchardproject.net/docs/Basic-Orchard-Concepts.ashx 

 

编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示