克服扩展 CMS 的噩梦





0/5 (0投票)
内容管理系统包含许多功能(博客、新闻、权限、版本控制等),重新创建这些功能将非常耗时。本文演示了 Telerik 如何使用 Sitefinity CMS 应对这一挑战。
内容管理系统 (CMS) 已经成为新 Web 项目的关键工具。CMS 提供许多开箱即用的功能(博客、电子商务、搜索、活动、论坛等),这些功能由非技术内容作者轻松管理。这使得 Web 项目能够快速启动并运行,并防止开发人员为许多常见功能重新发明轮子。
然而,每个项目总会有一小部分独特的、CMS 无法满足的需求。开发人员有责任扩展 CMS 以应对这些缺失的功能。对于许多 Web 项目来说,这就是一切开始走下坡路的地方。几周后,你就会陷入别人的代码中,并且努力扩展一个你没有设计的系统。
这是一个大问题
在 Telerik,这个挑战对我们来说是一个大问题。我们有许多合作伙伴使用 Sitefinity CMS 作为其 Web 项目的基础。这些项目需要在固定的时间表内进行定制开发。因此,参与这些项目的开发人员需要快速提高生产力。
Sitefinity 的架构被构建为非常强大且可扩展。这意味着 Sitefinity 是基于提供程序的,包含 LINQ 支持、Fluent API、RESTful Web 服务以及用于实现权限、发布、分类、工作流程等的大量接口。
然而,这种强大功能给那些仅仅想添加一个小自定义模块(例如,一个“展示画廊”)到他们网站的开发人员带来了复杂性。学习如何实现各种接口需要大量研究。在小型项目的背景下,这会消耗宝贵的时间。
为了应对这一挑战,我们需要创建一个易于使用的工具,使客户能够轻松利用 Sitefinity 的底层强大功能。换句话说,我们希望鱼与熊掌兼得。
蛋糕不是谎言
为了克服这一挑战,我们与众多客户进行了交谈,以更好地了解添加到 Sitefinity 的扩展。从这些对话中,快速出现的主题是新的内容类型。所有行业都有其领域特有的数据;剧院有电影,物业经理有租赁,银行有贷款,酒店有房间等等。这些新的内容类型是开发人员为其 CMS 创建的最常见的扩展。
我们在 Sitefinity 4.4 中交付了我们的解决方案;使用基于 Web 的“模块构建器”,开发人员现在可以快速创建新的内容类型。这个模块构建器将自动生成以前需要从头开始创建的接口、API 和小部件。但是,这些自动生成的模块仍然可以使用 .NET 和 Visual Studio 进行扩展。
此功能使开发人员能够快速原型制作其 Sitefinity 扩展,同时仍然可以自由地微调其新模块的功能。
工作原理
- 创建您的新内容类型。
- 定义相关字段。
- 安装您的新模块。
- 自定义您的管理界面。
- 添加新的内容项。
- 在网站上显示内容项。
- 使用 API 创建扩展。
尝试一下
没有 CMS 能够完全满足您所有 Web 项目的需求。因此,重要的是找到一个 CMS,它能帮助您完成大部分工作,然后为您提供工具,使您能够应对剩余的挑战。借助 Sitefinity 的新模块构建器,我们正在帮助客户快速应对他们项目的独特挑战。