李 季 趙坤燦 周 凱
[摘要]分析目前內容管理系統的重要性,基于Php+Mysql平臺,提出內容管理系統的設計方案,得出總體邏輯結構和功能模塊結構,總結該系統的特色。
[關鍵詞]內容管理系統 模塊管理 Php MySql
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0510043-01
一、引言
在當今的網站建設與Web開發(fā)中,Web應用需要的是開發(fā)人員高效率的開發(fā)節(jié)奏和用戶人性化的操作體驗,而為了解決這兩點問題,于是就有了眾多的商業(yè)CMS(內容管理系統)和開源CMS,CMS作為現代Web開發(fā)應用一種必不可少的應用系統,已經不再是單純的文章系統、圖片系統或者下載系統,它已經深化到了更復雜的需求程度,CMS要根據不同的用戶不同的需求從而來派生出不同的模塊,以此來應對日趨復雜的Web開發(fā)應用。因此,在用戶百變的需求面前,開發(fā)人員應該用一套自己的技術手段來高效、低成本的應對這些復雜的需求。
Php作為近兩年興起的一門優(yōu)秀的解析型語言,已經用它的優(yōu)勢證明了它并不比主流的J2EE或者C#差,而MySql作為當今Web應用的主流數據庫,具有強大的功能、靈活性、豐富的應用編程接口(API)以及精巧的系統結構。這兩者搭配在一起創(chuàng)造出來的平臺是最廉價、最高效的Web平臺,Php+MySql的環(huán)境正是以廉價這一優(yōu)勢躋身于目前Web開發(fā)應用的主流語言之中。
二、系統總體設計
通過對系統的調研與分析,系統主要邏輯功能如圖1所示。
本系統在執(zhí)行時,采用的是獨立的模板引擎Wtemplate,根據查詢生產的結果數組進行數組替換,將模板里的相關標簽解析為相關的Php代碼,從而進行模板編譯,生產緩存文件來執(zhí)行,速度比主流模板引擎Smarty還快。
三、系統功能設計
采用管理欄目全部在左邊,按照系統管理、內容管理、權限管理、其他管理、風格管理、文件管理的排列方式一目了然的向下排列。如圖2所示。
四、數據庫設計
Php語言的數據庫經典搭配是MySql,所以本系統采用的數據庫為MySql數據庫。數據庫采用了免費的MySql5.1服務器版。
系統數據結構很清晰,基本上所有的操作功能都涉及到了數據庫表,這樣設計才能達到可以任意擴展字段或者用途的目的。
五、特色功能
1.模板分離。前臺html模板和php程序完全分離,在進行網站建設的時候,只需要制作相應的html頁面套上相應的模板標簽即可生成不同的網站頁面。
2.標簽式模板制作。在制作模板的時候只需要填上相應的模板標簽就可以實現相應的程序功能,這樣做其實是為了讓一個不懂php語言的人只需要記住相應的標簽就可以很容易的制作出相應的功能和網站。
3.多語言支持。在網站建設中根據客戶需要可能會制作雙語版的網站或者外貿網站,甚至會制作涵蓋整個亞洲語言語種的網站,那么這個功能無疑是很實用的體現,調用一個對應的語言變量即可以實現多語言支持。
4.管理內容模塊化操作,可自定義。模塊的概念就是能實現相應需求的程序功能。例如在系統里已經內置了4個模塊,分別是文章、圖片、下載、產品四個模塊,那么就可以理解為文章系統、圖片系統、下載系統以及產品系統,如果要制作一個旅游網站發(fā)布線路,就可以很容易的創(chuàng)建一個線路模塊用來發(fā)布線路和管理線路,這樣就可以方便的應對更多的需求。
5.強大的后臺搜索功能。在龐大的數據量面前,如何實現真正的高效率內容管理是一個難題。系統后臺設計有獨立的搜索引擎系統,可以根據關鍵字進行欄目、時間范圍、發(fā)布人等條件進行查詢,而且可擴展性非常強。
6.人性化的后臺操作,xajax全程支持。后臺的功能排布方式和方便實用的操作,讓一個只要會電腦的人就可以輕松的維護和管理網站。后臺鑲嵌了對
Php有很好的體驗支持的xajax技術,你所看到的任何操作都是看不到頁面刷新的,大大地提高了工作效率。
7.跨平臺設計。有些Php程序代碼只能運行在Linux的系統上,為了做到通用的跨平臺性,系統中注意了一些函數的使用,使該系統能運行在任何支持Php的服務器上,不管服務器的操作系統是Linux、Cent OS、FreeBSD還是常見的Windows Server 2003。
六、結論
該系統目前已可穩(wěn)定的運行在各個互聯網信息化建設的項目上,不論是在安全性和數據穩(wěn)定性上均做出了多次改進及測試。
總體來說,該系統在目前還是能應對大部分中小型Web應用項目,而且二次開發(fā)也很容易,原先的設計就把擴展性考慮進去了,在今后的版本開發(fā)里還要不斷改進數據結構,爭取把系統做成一款更強大易用的商業(yè)CMS。
參考文獻:
[1]湯庸,結構化與面向對象軟件方法[M].科學出版社,1998:25-35.
[2]Mehdi Achour.PHP手冊[EB/OL].http://www.php.net/docs.php,2007.12.2.
[3]Mark R.Brown.Jerry Honeycutt.HTML3.2[M].開發(fā)使用手冊,1997:23-67.
[4]David Axmark.MySQL 5.1參考手冊[EB/OL].http://dev.mysql.com/do
c/refman/5.1/zh/index.html,2005.11.15.