我愛(ài)我的家園!

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

           

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

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


          ?

          內(nèi)容摘要:

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


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

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

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

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

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

          此外,就是除了面向最終瀏覽器用戶(hù)外,還要注意面向搜索引擎友好(Search engine Friendly)的URL設(shè)計(jì):通過(guò)URL REWRITE轉(zhuǎn)向或基于PATH_INFO的參數(shù)解析使得動(dòng)態(tài)網(wǎng)頁(yè)在鏈接(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))
          | / | \ \ / 管
          --------------- | --------------- 理
          |專(zhuān)題制作子系統(tǒng)| | |全文檢索子系統(tǒng)|
          --------------- | ---------------
          \ | /
          -------------------------|---------------------------------------------
          \ | / 頻
          --------------- 道 <== Portal系統(tǒng)(產(chǎn)品組裝)
          | Portal 系統(tǒng) | 管
          --------------- 理
          |
          -------------------------|---------------------------------------------
          | 前
          | 臺(tái) <== 發(fā)布系統(tǒng)(分發(fā)代理)
          --------------- 發(fā)
          |前臺(tái)發(fā)布系統(tǒng) | 布
          ---------------
          / \
          / \
          --------------- ---------------
          | 用戶(hù)瀏覽器 | |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è)軟件和開(kāi)源項(xiàng)目列表:
            http://directory.google.com/Top/Computers/Software/Internet/Site_Management/Content_Management/

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

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

            Portal---門(mén)戶(hù)系統(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開(kāi)發(fā)框架研究
            http://www.waferproject.org/index.html

            門(mén)戶(hù)(Portal)系統(tǒng)相關(guān)開(kāi)發(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)度。
            ?
            專(zhuān)業(yè)行業(yè)研究網(wǎng)站:
            http://adres.internet.com/

            相關(guān)廠(chǎng)商和開(kāi)源項(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萬(wàn)請(qǐng)求/每小時(shí) 以上

            如果看重廣告的第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$ 有知識(shí)庫(kù)擴(kuò)展應(yīng)用
            http://yazd.yasna.com/features.jsp 基于 Java

            所見(jiàn)即所得(WYSIWYG)編輯器

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

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

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

            圖片/文件上傳組建

            圖片和文件等非結(jié)構(gòu)化數(shù)據(jù)還是分別使用另外的服務(wù)解決比較好。這樣可以大大簡(jiǎn)化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) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 新思路


            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


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

            導(dǎo)航

            統(tǒng)計(jì)

            公告

            歡迎大家來(lái)到我的個(gè)人世界!

            常用鏈接

            留言簿(3)

            隨筆分類(lèi)(5)

            隨筆檔案(9)

            文章分類(lèi)(37)

            文章檔案(41)

            相冊(cè)

            語(yǔ)音技術(shù)

            最新隨筆

            搜索

            積分與排名

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            主站蜘蛛池模板: 宜都市| 报价| 五家渠市| 华坪县| 靖江市| 崇明县| 巴中市| 祁阳县| 沙坪坝区| 宜阳县| 上犹县| 高密市| 玛纳斯县| 麻江县| 嵊泗县| 吉木乃县| 治县。| 太原市| 尉犁县| 四平市| 泸州市| 新乐市| 尼勒克县| 喀什市| 乌兰浩特市| 石城县| 德令哈市| 靖安县| 仁化县| 红河县| 教育| 永年县| 微博| 新乐市| 临城县| 桑日县| 莒南县| 宿松县| 中超| 益阳市| 黑河市|