内容摘要:
内容管理系统概述
内容管理系统的选型
广告管理系统的选型
论坛/社区系统的选型
所见即所得编辑器的选型
图片上传和文件管理组件

关键词:"content manage system" cms 内容管理系统

内容管理系统概述

内容管理系统是一个很泛的概念:从商业门户网站的新闻系统到个人的Weblog都可以称作发布系统。

框架型:本身不包含任何应用实现,只是提供了底层框架,具体应用需要一定的二次开发,比如Cocoon,Vignette;
应用型:本身是一个面向具体类型的应用实现,已经包含了新闻/评论管理,投票,论坛,WIKI等一些子系统。比如:postNuke xoops等;

但无论如何,在发布系统选型之前,首先了解自己的实际需求是最重要的:想根据现成系统将自己的需求硬往上照搬是非常不可取的。访问量,权限控制和各种功能需求。每个模块和功能自己都比较清晰一点以后,再去网上找找类似的实现:你会发现其实每个环节到目前上都有比较成熟的实现了,而且还在不断完善和发展中,如果没有:你的需求太特殊,或者可以尝试分解成更小的系统组合实现。

内容管理系统被分离成以下几个层面:各个层面优先考虑的需求不同

后台业务子系统管理(管理优先:内容管理):新闻录入系统,BBS论坛子系统,全文检索子系统等,针对不同系统的方便管理者的内容录入:所见即所得的编辑管理界面等,清晰的业务逻辑:各种子系统的权限控制机制等;
Portal系统(表现优先:模板管理):大部分最终的输出页面:网站首页,子频道/专题页,新闻详情页一般就是各种后台子系统模块的各种组合,这种发布组合逻辑是非常丰富的,Portal系统就是负责以上这些后台子系统的组合表现管理;
前台发布(效率优先:发布管理):面向最终用户的缓存发布,和搜索引擎spider的URL设计等……
内容管理和表现的分离:很多成套的CMS系统没有把后台各种子系统和Portal分离开设计,以至于在Portal层的模板表现管理和新闻子系统的内容管理逻辑混合在一起,甚至和BBS等子系统的管理都耦合的非常高,整个系统会显得非常庞杂。而且这样的系统各个子系统捆绑的比较死,如果后台的模块很难改变。但是如果把后台各种子系统内容管理逻辑和前台的表现/发布分离后,Portal和后台各个子系统之间只是数据传递的关系:Portal只决定后台各个子系统数据的取舍和表现,而后台的各个子系统也都非常容易插拔。

内容管理和数据分发的分离:需要要Portal系统设计的时候注意可缓存性(Cache Friendly)性设计:CMS后台管理和发布机制,本身不要过多考虑“效率”问题,只要最终页面输出设计的比较Cacheable,效率问题可通过更前端专门的缓存服务器解决。

此外,就是除了面向最终浏览器用户外,还要注意面向搜索引擎友好(Search engine Friendly)的URL设计:通过URL REWRITE转向或基于PATH_INFO的参数解析使得动态网页在链接(URI)形式上更像静态的目录结构,方便网站内容被搜索引擎收录;

内容管理系统的选型
CMS行业研究
http://www.cmswatch.com
http://www.cmsreview.com
http://www.cmsinfo.org

CMS讨论邮件列表
http://www.cms-list.org
商业软件和开源项目列表:
http://directory.google.com/Top/Computers/Software/Internet/Site_Management/Content_Management/

推荐:基于XML的发布框架
http://cocoon.apache.org/

具体实现复杂程度可能会根据需求的不同而不同,但越是大型的系统越是需要分工:将内容(数据),表现(模板)和应用逻辑(程序)尽可能分离和对这3 者的管理。

Portal---门户系统
Open source Projects:
http://jportlet.sourceforge.net/
Apache Software Foundation: Jakarta JetSpeed 1.3
JetSpeed home page: http://jakarta.apache.org/jetspeed/site/index.html
JetSpeed Portlet API: http://cvs.apache.org/viewcvs/jakarta-jetspeed/proposals/portletAPI/
http://www.liferay.com/home/index.jsp
http://basicPortal.com/
http://www.jahia.org/
http://jporta.sourceforge.net/

商业软件:
BEA WebLogic Portal - http://edocs.bea.com/wlp/docs81/javadoc/com/bea/Portal/model/Portlet.html
IBM Websphere Portal - http://www.software.ibm.com/wsdd/zones/Portal/
oracle Portal Developer Kit - http://Portalstudio.oracle.com/

其它:
PSML - http://jakarta.apache.org/jetspeed/site/psml.html
BEA: Web Logic Portal 4.0 http://www.bea.com/products/weblogic/Portal/index.shtml
IBM: WebSphere Portal 2.1 http://www-4.ibm.com/software/webservers/Portal/
iPlanet: iPlanet Portal Server 3.0 http://www.iplanet.com/products/iplanet_Portal/home_Portal.html
oracle: oracle 9i Portal http://www.oracle.com/ip/deploy/ias/Portal/index.html
SAP Portal: http://www.iviewstudio.com
Epicentric Portal: http://www.epicentric.com/solutions/products/efs/

参考:
Wafer:Java开发框架研究
http://www.waferproject.org/index.html

门户(Portal)系统相关开发框架:
http://udoo.51.net/mt/archives/000011.html

广告管理系统

广告系统和内容的分离,可以大大降低系统之间的关联度。

专业行业研究网站:
http://adres.internet.com

相关厂商和开源项目:
http://directory.google.com/Top/Computers/Programming/Languages/PHP/Scripts/Ad_Management/?il=1
http://directory.google.com/Top/Computers/Software/Internet/Servers/Advertising/?tc=1
http://www.jspin.com/home/apps/admanage?cob=winedit
http://www.scriptdex.com/dex/php_ad_management.shtml

推荐:
http://www.phpadsnew.com/ 功能性比较强
http://oasis.sourceforge.net/ 免费 基于日志记录和定期导入MYSQL统计,可以负载50万请求/每小时 以上

如果看重广告的第3方特性,可以选择第三方服务:
http://www.doubleclick.net/
http://www.allyes.com/

论坛/社区系统
关键词: BBS FORUM

论坛软件介绍:
http://directory.google.com/Top/Computers/Internet/Web_Design_and_Development/Message_Boards/

推荐:
http://www.phpBB.com PHP + MySQL open source
http://www.vbulletin.com/order/ PHP + MySQL   有付费的商业支持85-160$

http://www.jivesoftware.com/products/pricing.jsp 商业论坛系统,1000$-2500$ 有知识库扩展应用
http://yazd.yasna.com/features.jsp 基于 Java

所见即所得(WYSIWYG)编辑器
在内容的录入管理方面,所见即所得是比较重要的,这样可以大大简化对系统中布局排版的需求。
基于浏览器的WYSIWYG(所见即所得)编辑器是CMS设计中,编辑工具的主要考虑方面。目前主要是通过JAVASCRIPT调用IE或其他浏览器的内置方法实现。其中基于IE5.5浏览器的实现最为简洁。这里有一个完整的例子:
Building a WYSIWYG HTML Editor Part 1/2
Building a WYSIWYG HTML Editor Part 2/2

主要功能:

能够通过JAVASCRIPT实现的基本功能:加粗,斜体字,居中,添加链接,添加图片,模式切换:HTML和文本模式的切换,
Word垃圾代码过滤
图片上载接口:图片上载最好通过其他独立模块实现。
选型指标:

不依赖服务器端代码:只通过JAVASCRIPT或客户端控件实现代码,可以保证以后系统迁移的方便。
WORD垃圾代码过滤
可视化编辑器大全:
http://www.bris.ac.uk/is/projects/cms/ttw/ttw.html

推荐:
http://www.aine.be/aynhtml/

图片/文件上传组建
图片和文件等非结构化数据还是分别使用另外的服务解决比较好。这样可以大大简化CMS本身的复杂程度。

推荐:
文件上传:
Apache Commons项目
http://jakarta.apache.org/commons/

ImageJ:图片处理缩略图生成和水印等
http://rsb.info.nih.gov/ij/

关于Blog系统的选型,目前主流的基于PHP的包括:
· Nucleus 3.0 http://www.nucleuscms.org
· pmachine 2.3 http://www.pmachine.com
· b2evolution 0.9.0.3 http://www.b2evolution.net
· Serendipity 0.6 http://www.s9y.org
· WordPress 1.2 http://www.wordpress.org
· bBlog 0.7.3 http://www.bblog.com
· pLog 0.3.1 http://www.plogworld.org
· Simplog .9 http://www.simplog.org
· Textpattern 1.18a http://www.textpattern.com

CMS设计和CMS选型(内容管理系统)相关推荐

  1. 行云海cms mysql检测不出版本_行云海CMS(XYHCMS)网站内容管理系统 v3.6 bulid1012

    行云海CMS(XYHCMS)网站内容管理系统 v3.6 bulid1012 更新日志 [√]增加审核功能 [√]让编辑器支持html5原生mp4播放器 [√]让编辑器支持html5原生mp3播放器 [ ...

  2. CMS (内容管理系统)

    ylbtech-Miscellaneos:CMS (内容管理系统) CMS是"Content Management System"的缩写,意为"内容管理系统". ...

  3. cms php vue 开源_企业网站制作常用CMS网站内容管理系统推荐

    现在做网站90%的都是采用cms网站管理系统,内容管理系统(CMS)是一种当下非常主流的网站建设系统,能够快速地帮助我们建立一个属于自己的网站,相比定制后台系统,主流的cms都是经过很多年持续更新,经 ...

  4. 介绍几款最优秀的CMS(网站内容管理系统)

    cms(content management system),中文叫网站内容管理系统,大概2004以前,如果想进行网站内容管理,基本上都是靠手工维护,但千变万化的信息流,但没有好的程序支持,还继续靠手 ...

  5. 开源丨CloudBase CMS 内容管理系统!简单易用企业内容管理流

    背景 云开发CloudBase CMS 是云开发推出的一站式云端内容管理系统,助力企业的数据运营管理工作. 开发者可以直接在云开发扩展能力中一键安装 CloudBase CMS,免费使用 CloudB ...

  6. 10个基于Java的CMS网站内容管理系统

    在开始研究 java CMS之前,我们先要了解什么是CMS.CMS - Content Management Systems,内容管理系统,简单的说,就是一个帮助进行网站内容管理的系统.CMS通常包含 ...

  7. 内容管理系统(CMS)的设计和选型

    J2EE相关: 内容管理系统(CMS)的设计和选型 发表于 Tuesday, July 27 @ 11:36:07 CST by joezxh joe.zhang 投递 "作者: 车东 Em ...

  8. 面向搜索引擎的内容管理系统(CMS)设计

    作者: 车东 Email: chedongATbigfoot.com/chedongATchedong.com 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明 ht ...

  9. 基于SSM框架的CMS内容管理系统的设计与实现

    基于SSM框架的CMS内容管理系统的设计与实现(付源码+论文) 工作任务: 1.通过学习和查找相关的资料,掌握SpringMVC.Spring.Mybatis框架的搭建及开发:通过学习掌握freema ...

最新文章

  1. Linux Kernel TCP/IP Stack — L7 Layer — Application Socket I/O 接口类型
  2. numpy的random模块
  3. 《第13章 猜拳游戏》
  4. 不等待输入_「对方正在输入……」的提示,给聊天带来什么影响?
  5. 微信公众号手机无法直接下载APK文件是怎么回事
  6. Spring Boot 2.0(二):Spring Boot 2.0尝鲜-动态 Banner
  7. docker三剑客之docker-machine
  8. 微信小程序----全局变量
  9. F. It‘s a bird! No, it‘s a plane! No, it‘s AaParsa!
  10. 《你好李焕英》票房反超《唐探3》 成中国影史票房第五
  11. web前端【第三篇】CSS选择器
  12. kafka自带的zk启动_kafka-eagle监控和管理kafka
  13. selenium 2定位方式实例
  14. javasript深度拷贝
  15. 论文笔记_SLAM_An Overview of SLAM
  16. 微信api接口调用-微信群管理
  17. 马克思主义基本原理概论复习资料
  18. IT运维外包甩不掉的包袱
  19. Git: Cannot update paths and switch to branch 'feature' at the same time.
  20. 云服务器的快照功能是什么?

热门文章

  1. php生成字母数字订单,php生成唯一订单号可控制位数字母和数字
  2. 深圳先进院研究生计算机专业,2020年中科院深圳先进技术研究院全日制硕士研究生统考专业说明...
  3. pytorch torch.arange
  4. requests 忽略证书
  5. ubuntu 给执行文件添加快捷方式
  6. Linux 词典安装
  7. Linux 用户(useradd/userdel/groupadd/groupmod
  8. 优秀员工和普通员工的十大区别,老板和员工都应该知道
  9. 体验VMware Converter Client 6.2与Veeam BR 10迁移ESXi 6.0 vm到vCenter 6.7 u3
  10. vCenter 6.7 shell 和 SSH开启