我愛我的家園!

          成功在于你是否努力,希望在于你是否相信自己!

           

          內(nèi)容管理系統(tǒng)(CMS)的設(shè)計(jì)和選型

          內(nèi)容管理系統(tǒng)(CMS)的設(shè)計(jì)和選型


          ?

          內(nèi)容摘要:

          內(nèi)容管理系統(tǒng)概述


          內(nèi)容管理系統(tǒng)是一個很泛的概念:從商業(yè)門戶網(wǎng)站的新聞系統(tǒng)到個人的Weblog都可以稱作發(fā)布系統(tǒng)。
          • 框架型:本身不包含任何應(yīng)用實(shí)現(xiàn),只是提供了底層框架,具體應(yīng)用需要一定的二次開發(fā),比如Cocoon,Vignette;
          • 應(yīng)用型:本身是一個面向具體類型的應(yīng)用實(shí)現(xiàn),已經(jīng)包含了新聞/評論管理,投票,論壇,WIKI等一些子系統(tǒng)。比如:postNukexoops等;

          但無論如何,在發(fā)布系統(tǒng)選型之前,首先了解自己的實(shí)際需求是最重要的:想根據(jù)現(xiàn)成系統(tǒng)將自己的需求硬往上照搬是非常不可取的。訪問量,權(quán)限控制和各種功能需求。每個模塊和功能自己都比較清晰一點(diǎn)以后,再去網(wǎng)上找找類似的實(shí)現(xiàn):你會發(fā)現(xiàn)其實(shí)每個環(huán)節(jié)到目前上都有比較成熟的實(shí)現(xiàn)了,而且還在不斷完善和發(fā)展中,如果沒有:你的需求太特殊,或者可以嘗試分解成更小的系統(tǒng)組合實(shí)現(xiàn)。

          內(nèi)容管理系統(tǒng)被分離成以下幾個層面:各個層面優(yōu)先考慮的需求不同

          1. 后臺業(yè)務(wù)子系統(tǒng)管理(管理優(yōu)先:內(nèi)容管理):新聞錄入系統(tǒng),BBS論壇子系統(tǒng),全文檢索子系統(tǒng)等,針對不同系統(tǒng)的方便管理者的內(nèi)容錄入:所見即所得的編輯管理界面等,清晰的業(yè)務(wù)邏輯:各種子系統(tǒng)的權(quán)限控制機(jī)制等;
          2. Portal系統(tǒng)(表現(xiàn)優(yōu)先:模板管理):大部分最終的輸出頁面:網(wǎng)站首頁,子頻道/專題頁,新聞詳情頁一般就是各種后臺子系統(tǒng)模塊的各種組合,這種發(fā)布組合邏輯是非常豐富的,Portal系統(tǒng)就是負(fù)責(zé)以上這些后臺子系統(tǒng)的組合表現(xiàn)管理;
          3. 前臺發(fā)布(效率優(yōu)先:發(fā)布管理):面向最終用戶的緩存發(fā)布,和搜索引擎spider的URL設(shè)計(jì)等……
          內(nèi)容管理和表現(xiàn)的分離:很多成套的CMS系統(tǒng)沒有把后臺各種子系統(tǒng)和Portal分離開設(shè)計(jì),以至于在Portal層的模板表現(xiàn)管理和新聞子系統(tǒng)的內(nèi)容管理邏輯混合在一起,甚至和BBS等子系統(tǒng)的管理都耦合的非常高,整個系統(tǒng)會顯得非常龐雜。而且這樣的系統(tǒng)各個子系統(tǒng)捆綁的比較死,如果后臺的模塊很難改變。但是如果把后臺各種子系統(tǒng)內(nèi)容管理邏輯和前臺的表現(xiàn)/發(fā)布分離后,Portal和后臺各個子系統(tǒng)之間只是數(shù)據(jù)傳遞的關(guān)系:Portal只決定后臺各個子系統(tǒng)數(shù)據(jù)的取舍和表現(xiàn),而后臺的各個子系統(tǒng)也都非常容易插拔。

          內(nèi)容管理和數(shù)據(jù)分發(fā)的分離:需要要Portal系統(tǒng)設(shè)計(jì)的時候注意可緩存性(Cache Friendly)性設(shè)計(jì):CMS后臺管理和發(fā)布機(jī)制,本身不要過多考慮“效率”問題,只要最終頁面輸出設(shè)計(jì)的比較Cacheable,效率問題可通過更前端專門的緩存服務(wù)器解決。

          此外,就是除了面向最終瀏覽器用戶外,還要注意面向搜索引擎友好(Search engine Friendly)的URL設(shè)計(jì):通過URL REWRITE轉(zhuǎn)向或基于PATH_INFO的參數(shù)解析使得動態(tài)網(wǎng)頁在鏈接(URI)形式上更像靜態(tài)的目錄結(jié)構(gòu),方便網(wǎng)站內(nèi)容被搜索引擎收錄;

          ---------------    ---------------     ---------------                    
          |新聞管理子系統(tǒng)| | BBS論壇子系統(tǒng)| | 商城子系統(tǒng) |
          --------------- --------------- ---------------
          | \ / | \ / 內(nèi)
          | ----------|--- \ / 容 <== 業(yè)務(wù)子系統(tǒng)(零件生產(chǎn))
          | / | \ \ / 管
          --------------- | --------------- 理
          |專題制作子系統(tǒng)| | |全文檢索子系統(tǒng)|
          --------------- | ---------------
          \ | /
          -------------------------|---------------------------------------------
          \ | / 頻
          --------------- 道 <== Portal系統(tǒng)(產(chǎn)品組裝)
          | Portal 系統(tǒng) | 管
          --------------- 理
          |
          -------------------------|---------------------------------------------
          | 前
          | 臺 <== 發(fā)布系統(tǒng)(分發(fā)代理)
          --------------- 發(fā)
          |前臺發(fā)布系統(tǒng) | 布
          ---------------
          / \
          / \
          --------------- ---------------
          | 用戶瀏覽器 | |Search Engine|
          --------------- ---------------

          這里,我把在內(nèi)容發(fā)布系統(tǒng)選型中找到的一些資料總結(jié)如下:

            內(nèi)容管理系統(tǒng)的選型

            關(guān)鍵詞:CMS Content Manage System

            CMS行業(yè)研究
            http://www.cmswatch.com/
            http://www.cmsreview.com/
            http://www.cmsinfo.org/

            CMS討論郵件列表
            http://www.cms-list.org/

            商業(yè)軟件和開源項(xiàng)目列表:
            http://directory.google.com/Top/Computers/Software/Internet/Site_Management/Content_Management/

            推薦:基于XML的發(fā)布框架
            http://cocoon.apache.org/

            具體實(shí)現(xiàn)復(fù)雜程度可能會根據(jù)需求的不同而不同,但越是大型的系統(tǒng)越是需要分工:將內(nèi)容(數(shù)據(jù)),表現(xiàn)(模板)和應(yīng)用邏輯(程序)盡可能分離和對這3 者的管理。

            Portal---門戶系統(tǒng)
            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/

            商業(yè)軟件:
            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開發(fā)框架研究
            http://www.waferproject.org/index.html

            門戶(Portal)系統(tǒng)相關(guān)開發(fā)框架:
            http://udoo.51.net/mt/archives/000011.html

            廣告管理系統(tǒng)

            關(guān)鍵詞:ad server

            廣告系統(tǒng)和內(nèi)容的分離,可以大大降低系統(tǒng)之間的關(guān)聯(lián)度。
            ?
            專業(yè)行業(yè)研究網(wǎng)站:
            http://adres.internet.com/

            相關(guān)廠商和開源項(xiàng)目:
            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/ 功能性比較強(qiáng)
            http://oasis.sourceforge.net/ 免費(fèi) 基于日志記錄和定期導(dǎo)入MYSQL統(tǒng)計(jì),可以負(fù)載50萬請求/每小時 以上

            如果看重廣告的第3方特性,可以選擇第三方服務(wù):
            http://www.doubleclick.net/
            http://www.allyes.com/

            論壇/社區(qū)系統(tǒng)

            關(guān)鍵詞: 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? 有付費(fèi)的商業(yè)支持85-160$

            http://www.jivesoftware.com/products/pricing.jsp 商業(yè)論壇系統(tǒng),1000$-2500$ 有知識庫擴(kuò)展應(yīng)用
            http://yazd.yasna.com/features.jsp 基于 Java

            所見即所得(WYSIWYG)編輯器

            在內(nèi)容的錄入管理方面,所見即所得是比較重要的,這樣可以大大簡化對系統(tǒng)中布局排版的需求。
            基于瀏覽器的WYSIWYG(所見即所得)編輯器是CMS設(shè)計(jì)中,編輯工具的主要考慮方面。目前主要是通過JAVASCRIPT調(diào)用IE或其他瀏覽器的內(nèi)置方法實(shí)現(xiàn)。其中基于IE5.5瀏覽器的實(shí)現(xiàn)最為簡潔。這里有一個完整的例子:
            Building a WYSIWYG HTML Editor Part 1/2
            Building a WYSIWYG HTML Editor Part 2/2

            主要功能:
            • 能夠通過JAVASCRIPT實(shí)現(xiàn)的基本功能:加粗,斜體字,居中,添加鏈接,添加圖片,模式切換:HTML和文本模式的切換,
            • Word垃圾代碼過濾
            • 圖片上載接口:圖片上載最好通過其他獨(dú)立模塊實(shí)現(xiàn)。
            選型指標(biāo):
            • 不依賴服務(wù)器端代碼:只通過JAVASCRIPT或客戶端控件實(shí)現(xiàn)代碼,可以保證以后系統(tǒng)遷移的方便。
            • WORD垃圾代碼過濾
            可視化編輯器大全:
            http://www.bris.ac.uk/is/projects/cms/ttw/ttw.html

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

            圖片/文件上傳組建

            圖片和文件等非結(jié)構(gòu)化數(shù)據(jù)還是分別使用另外的服務(wù)解決比較好。這樣可以大大簡化CMS本身的復(fù)雜程度。

            推薦:
            文件上傳:
            Apache Commons項(xiàng)目
            http://jakarta.apache.org/commons/

            ImageJ:圖片處理縮略圖生成和水印等
            http://rsb.info.nih.gov/ij/

            關(guān)于Blog系統(tǒng)的選型,目前主流的基于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/


            原帖: http://www.chedong.com/tech/cms.html

            posted on 2007-09-30 12:33 死神 閱讀(361) 評論(0)  編輯  收藏 所屬分類: 新思路


            只有注冊用戶登錄后才能發(fā)表評論。


            網(wǎng)站導(dǎo)航:
             

            導(dǎo)航

            統(tǒng)計(jì)

            公告

            歡迎大家來到我的個人世界!

            常用鏈接

            留言簿(3)

            隨筆分類(5)

            隨筆檔案(9)

            文章分類(37)

            文章檔案(41)

            相冊

            語音技術(shù)

            最新隨筆

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            主站蜘蛛池模板: 云南省| 灵川县| 湘阴县| 泸西县| 阿克苏市| 邢台县| 当雄县| 黔东| 彭水| 资源县| 安丘市| 冀州市| 渭源县| 榆林市| 治县。| 甘南县| 阿克苏市| 垫江县| 突泉县| 通山县| 互助| 开原市| 江津市| 尖扎县| 嫩江县| 惠安县| 安龙县| 庆城县| 玉田县| 宿松县| 嘉定区| 克东县| 乐清市| 岳西县| 伊春市| 宝坻区| 邻水| 曲阜市| 海林市| 泊头市| 梅州市|