网站内容管理平台(一个快速开发网站的理念和方法问题)

优采云 发布时间: 2022-04-10 08:08

  网站内容管理平台(一个快速开发网站的理念和方法问题)

  2021-08-19

  Kooboo的定位是cms,内容管理平台,更严格的意义上应该是网站的快速开发平台。针对通用网站开发流程的分析和细化,重点解决网站的通用需求,提出一套快速开发网站的概念和方法。在这些理念和方法的指导下,开发网站,规范开发流程,提高开发效率,降低维护成本,提升网站质量。

  我们正在开发一个网站,一般会面临以下问题:

  内容存储,这是一个根本性的问题。内容是整个网站的身体和灵魂。没有内容,网站 无法欣赏它的价值。网站开发最重要的工作就是对内容的处理,即对内容进行增删改查。或者更直接的说,就是开发者对数据库的操作。以及内容数据如何直接影响开发效率。开发者不可避免地要处理大量的 SQL 语句,或者使用 ORM 等工具和框架来提高开发效率。但不管怎样,开发者还是需要面对大量的开发和配置工作。Kooboo要解决的首要问题是让开发者从重复繁重的工作中解放出来,实现一个通用的存储。开发商不 甚至需要关心数据是存储在数据库中还是本地文件中。对于内容存储,开发者只需要根据自己需要的字段设计相应的数据结构(Schema、内容类型),并建立相应的内容目录(Folder),就可以使用相应的接口对内容进行操作,而无需前往关心SQL或者其他存储细节,内容关系不是简单的一维关系,可以处理1对1、1对多、多对多的关系。而且这些内容可以通过Kooboo的后端直接维护,不需要重新开发单独的后端来维护网站内容,减少了开发任务。开发者只需要根据自己需要的字段设计相应的数据结构(Schema、内容类型),并建立相应的内容目录(Folder),就可以使用相应的接口对内容进行操作,而无需去关心SQL或其他存储细节,内容关系不是简单的一维关系,它可以处理1对1、1对多、多对多的关系。而且这些内容可以通过Kooboo的后端直接维护,不需要重新开发单独的后端来维护网站内容,减少了开发任务。开发者只需要根据自己需要的字段设计相应的数据结构(Schema、内容类型),并建立相应的内容目录(Folder),就可以使用相应的接口对内容进行操作,而无需去关心SQL或其他存储细节,内容关系不是简单的一维关系,它可以处理1对1、1对多、多对多的关系。而且这些内容可以通过Kooboo的后端直接维护,不需要重新开发单独的后端来维护网站内容,减少了开发任务。那么他们就可以使用相应的接口来操作内容,而不用去关心SQL或者其他存储细节,而且内容关系不是简单的一维关系,它可以处理1对1,1对多,和多对多的关系。而且这些内容可以通过Kooboo的后端直接维护,不需要重新开发单独的后端来维护网站内容,减少了开发任务。那么他们就可以使用相应的接口来操作内容,而不用去关心SQL或者其他存储细节,而且内容关系不是简单的一维关系,它可以处理1对1,1对多,和多对多的关系。而且这些内容可以通过Kooboo的后端直接维护,不需要重新开发单独的后端来维护网站内容,减少了开发任务。

  多个网站处理、内容共享问题。在现实中,我们可能面临组织关系中的机构需要内容共享但结构独立的需求网站。当我们遇到这种问题时,我们通常的解决方案是为每个机构单独开发网站。当遇到需要共享的数据时,我们可以通过一定的技术手段,或者共享数据库或者共享目录来实现。目的。还有一个典型的场景,当我们要开发一个全球性的网站时,不可避免地要解决各个地区的语言和文化问题。只是语言,我们可以通过资源文件来解决,但是当网站中的某部分内容需要根据地区的文化特点进行修改时,除了不同的语言,如何以最小的变化来实现它?重用和定制?当内容还需要根据不同地区进行本地化时,这不是简单的资源文本来解决的。同样的,你可以扩展这些想法,想开发一系列功能相同、UI相似的公司之间的复用网站。在 Kooboo 中,每一个 网站 都只是平台的一部分。在这个平台上可以同时有很多直接或没有关系的网站。所有网站都可以有自己独立的域名。网站 之间可以直接或间接继承。网站 的各种元素可以在继承的 网站 之间共享和重用。子站点可以完全继承父站点的所有代码和内容,并且还可以根据需要对父站点的所有元素进行一些特定的更改,从而通过最小的更改实现最大的复用,而不是简单的物理复制。,即如果父站点发生任何变化,也会反映在继承的网站中。这是 网站 的继承。继承不仅可以继承内容,还可以继承代码和模板,并且支持本地化,即满足面向对象的三个基本特征。

  模板管理。对于一个网站,用户最直观的体验是网站的UI。对于动态页面,设计界面就是设计模板。在 Kooboo 中,使用传统的 Webform .ASPX 页面作为模板,延续了 ASP.NET 程序员的开发经验。同时提供完善的皮肤管理、脚本管理、资源管理,以及强大的在线语法编译器,让程序员从复杂的路径样式引用和语法记忆中解放出来。模板可以分为布局模板和内容模板。布局模板是控制整个页面布局的模板,其概念相当于MasterPage;内容模板是页面中某段内容的模板,它与页面某部分的显示有关。

  页面管理。与 ASP.NET WebForm 的页面概念不同,在 Kooboo 中,“页面”不是物理的 .ASPX 页面模板。一个页面只是模板和数据的组合,有一些由URL表示的配置值。这些配置信息决定了哪些页面模板放置在页面中所选模板的某个位置;它决定了页面上需要传递的参数,以及这些参数是如何传递的(普通传递参数或传递参数对SEO友好);决定页面在哪里寻找所需的内容(DataRule);决定哪些角色可以访问该页面。同时,页面管理也可以用来生成首页导航菜单。

  扩展插件。一个完整的开发平台必然要提供解决一些特殊情况的能力,也必须对一些通用的功能,比如论坛、博客、Wiki等,重用整个模块,以提供资源重用。共享。在 Kooboo 中,有两种插件:页面插件和模块插件。PagePlugin 是一个 Controller 扩展,它运行在为页面的特殊要求而开发的通用 Controller 上。适用场景:一个网站首页,可能80%的页面是用来展示的,还有一些可能还需要提交数据的需求,那么这些提交的数据就可以在View中通过传统的WebForm PostBack,也可以通过编写页面插件独立。从MVC组件的角度来看,编写页面插件也更符合框架要求;另一种情况可能是页面需要的一些数据并没有存储在Kooboo中,而是需要通过其他渠道(如WebService)从其他地方获取,这种情况下你也需要编写插件来达到你的目的。模块插件是为重用某个应用的完整功能而开发的一个完整的功能包,可以是一个简单的博客系统、论坛或者其他可以重用的小功能。这些功能模块可以添加到页面模板中的任何地方(就像普通的内容模板一样使用)。在 kooboo 中,每个模块插件都可以作为一个独立的 网站 存在,不一定需要在 Kooboo 平台上运行,你可以把它想象成一个 Mini Site,如果你了解 ASP.NET MVC2 ,那么你可以把它理解为一个类似于Area的函数。开发一个模块插件,也就是开发一个普通的MVC站点,可以独立开发调试​​。

  网站包。网站 开发完成后,可能需要从开发平台移植到生产环境平台。此时,您可以将设计好的站点导出,然后在另一个Kooboo平台上选择导入操作。很快,您会发现站点包还有另一个应用程序。如果你设计一个网站模板,然后基于这个模板快速生成一些类似的网站,这也是很多网站快速软件生成的做法。即一个设计好的网站不仅可以继承和复用,还可以导出复用,实现最大复用。

  以上就是 Kooboo 的核心功能,但是当你深入了解 Kooboo 之后,你会发现更多有用的功能,包括:

  内置全文搜索,使用,维护内容时自动更新全文索引文件,通过简单的API快速实现全文搜索功能。

  简单的工作流程管理,内置简单的工作流程功能,方便内容维护时的流程审核流程。

  通过设置一个简单的开关来配置 网站 是在 Debug 还是 Release 模式下运行,自动合并和压缩脚本和样式文件。在 Release 中运行时,压缩的脚本文件和样式文件会自动合并。

  错误管理,当发生错误时,站点可以根据错误类别配置要转到的页面。

  以上功能是Kooboo要解决的核心问题。我会在后面的一系列文章中使用kooboo1.2进一步展开每个功能点的细节。Kooboo 1.2 将在未来一到两周内发布,敬请期待。

  官方网站:

  CodePlex 网站:

  现场演示:

  官方论坛:

  分类:

  技术要点:

  相关文章:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线