2010-11-30 41 views
0

我有一个有相关页面的网站。他们有指向彼此的链接,但我没有整合系统,我也不知道这意味着什么。什么将内容管理系统与一堆网页分开?

什么是一组网页必须被视为内容管理系统(CMS)的最小代码。是否所有的设置都在数据库中,并且页面是以某种方式生成的?是否有一些我所有页面可以共享的小片段,使它们成为CMS,数据库还是不是?

谢谢。我也希望不必研究一个巨大的CMS来查看是什么使其成为CMS。基本了解后,我会知道我在找什么。

编辑:这就是为什么我问代码。每当我看了一个CMS,也许他们都不一样,我看到要开发一个模块,你总是必须从某些类继承,并且有一些必要的代码。我不知道是否有某种神奇的模式,我不知道所有的CMS制造商都明白。

编辑:也许我的问题更多是关于可扩展性或可插拔性。最低限度会是什么样子?有可能在这里显示吗?

编辑:这个怎么样?如果CMS不可扩展和/或可插拔,是CMS吗?

回答

1

我觉得这真的不可以说。我们都管理内容。 “系统”就是您使用的任何机制(在资源管理器中拖放或通过SQL查询提交内容更改)。说需要最少量的代码实际上并不是指示性的。什么是指示性的是你发现自己犯错的频率以及给定的技能水平和知识的给定用户在设计系统中执行功能的容易程度。这就告诉你你所拥有的值得称为“CMS”的品质/程度。

简而言之,CMS是允许用户发布和编辑现有网页内容的应用程序。

作为对编辑的回应:

“好”的CMS允许可扩展性。通过使用继承,您可以扩展CMS提供的核心组件之外的功能。这是魔法。

关于可扩展性:

取决于你想,你可以加载使用内置的框架指令页面或控件(ASP.NET)来构建你的CMS的语言/框架。通常,正在做什么是一个父类/接口被定义强制的模块将被开发遵循某个给定的标准:

Public MustInherit Class CMSModule 

'Here you will define properties and functions that need to be global to all modules being developed to extend your CMS. 

    public property ModuleName as string 
End Class 

public class PlugInFooCMSPage 
    inherits CMSModule 

end class 

然后,它只是一个简单的在任何结构动态加载模块事项给定的语言/框架提供。

+0

是的,但他们总是有一些代码,你必须继承创建模块。那是需要后来继承的那个模型,我不明白。更多的是使它成为可插拔或可扩展类型的问题吗? – johnny 2010-11-30 18:29:59

+0

@Johnny看到我的回应,但是。这完全是关于可扩展性。 – Achilles 2010-11-30 18:30:57

0

内容管理系统是一个管理内容的系统。 :) 因此,如果您有多个共享相同布局的页面,则可以创建一个将内容存储到数据库中的系统,并且在请求页面时,它会获取该内容,并将其与包含页眉的模板合并,菜单等,并输出结果。

基本思想是,您不想复制HTML页面,并且在想要更改布局时不得不编辑数百个HTML页面。

这样的系统可能非常复杂,具有wysiwyg编辑器,工具栏,版本控制,多用户发布等功能,但它可以像标准日志背后的单个页面一样简单,只包含一个输入字段标题和您在其中键入html内容的textarea。

1

最终,CMS是一个系统,让您管理内容,因此它需要专用于让您轻松创建编辑删除您网站上的网页的用户界面。

但是,通常期望CMS能够提供基于浏览器的所见即所得页面编辑器,文件上传,图像大小调整,URL重写,页面类别和标签,用户帐户(编辑器,管理员,管理员)以及一些一种templae系统。