思路:
一、目前在企業中使用比較多的cms內容管理有如下幾種:
1、dedecms,2、phpcms
二、我們選擇學習v9版本的phpcms,主要有以下幾點原因:
1、基于MVC模式的內容管理系統
2、碎片技術
三、下面,我們就來進行phpcms v9的安裝.
ci框架的安裝,我們只需要按照如下步驟進行操作就可以了.
1、官網:http://www.phpcms.cn 去下載phpcms v9最新的版本
2、下載完畢后,解壓,并將其復制粘貼到程序的主目錄(d:/wamp/xmall/),然后再將其重命名為"mycms",那么"mycms" 就作為cms的項目名稱存在了.
3、為我們的cms項目搭建一個虛擬主機:
首先,找到httpd.conf配置文件,開啟虛擬主機的配置,然后,找到httpd-vhosts.conf配置文件,進行虛擬主機的配置.
最后,找到hosts配置文件,為我們的ci項目添加dns映射.
4、在瀏覽器中輸入 http://www.49028c.com/install/ 回車,就可進行phpcms v9內容管理系統的安裝.
四、phpcms v9框架的目錄結構分析:
了解v9框架的目錄結構,有助于幫助我們快速建立起對v9框架的一個整體認識,打開"mycms"項目,有如下文件和目錄.
使用協議說明文檔、英文版的用戶手冊,這兩項不是項目所必須的,可暫時將其刪除.
- |-----api 接口文件目錄
- |-----caches 緩存文件目錄
- |-----configs 系統配置文件目錄
- |-----database.php 數據庫配置文件
- |-----route.php 路由配置文件
- |-----system.php 系統配置文件
- |-----cache.php 緩存配置文件
- |-----configs_* 系統緩存文件目錄
- |-----configs_commons/caches_data 主要用來存放后臺設置的配置信息
- |-----category_content.cache.php欄目與站點映射所對應的配置文件
- |-----category_content_1.cache.php站點1下所有欄目的詳細配置信息
- |-----category_item_1.cache.php 文章模型下各欄目所對應的數據量
- |-----category_item_2.cache.php 下載模型下各欄目所對應的數據量
- |-----category_item_3.cache.php 圖片模型下各欄目所對應的數據量
- |-----keylink.cache.php 關聯鏈接配置緩存文件
- |-----model.cache.php 三大模型配置緩存文件
- |-----mood_program.cache.php 表情配置緩存文件
- |-----position.cache.php 推薦位配置緩存文件
- |-----poster_template_1.cache.php廣告位模板配置緩存文件
- |-----sitelist.cache.php 站點列表配置文件,主要緩存所有站點的基本配置信息
- |-----type_content.cache.php 多個站點下的類別配置信息
- |-----type_content_1.cache.php 當前站點下類別配置信息緩存文件
- |-----urlrules.cache.php url規則配置信息緩存文件
- |-----urlrules_detail.cache.php url規則詳細配置信息緩存文件
- |-----special.cache.php 專題配置信息緩存文件
- |-----role.cache.php 角色配置緩存文件
- |-----link.cache.php 友情鏈接緩存文件
- |-----configs_model/caches_data
- |-----content_form.class.php 生成表單的類庫緩存文件
- |-----content_input.class.php 入庫時,對表單數據進行驗證的類庫緩存文件
- |-----content_output.class.php 對從數據表中查詢出來的數據進行處理的函數
- |-----content_update.class.php 對要更新的數據進行有效性驗證的函數
- |-----model_field_1.cache.php 文章模型所有模型字段的緩存信息
- |-----model_field_2.cache.php 下載模型所有模型字段的緩存信息
- |-----model_field_3.cache.php 圖片模型所有模型字段的緩存信息
- |-----phpcms phpcms框架主目錄
- |-----languages 框架語言包目錄
- |-----libs 框架主類庫、主函數庫目錄
- |-----classes
- |-----form.class.php 表單生成類庫文件
- |-----application.class.php 應用程序類庫文件
- |-----image.class.php 圖片處理類庫文件
- |-----attachment.class.php 附件處理類庫文件
- |-----param.class.php URL參數處理類庫文件
- |-----functions
- |-----global.func.php 公共函數庫文件
- |-----extension.class.php 擴展函數庫文件
- |-----model 框架數據庫模型目錄
- |-----content_model.class.php 內容模型文件
- |-----admin_model.class.php 管理員模型文件
- |-----attachment_model.class.php 附件模型文件
- |-----modules 框架模塊目錄
- |-----admin admin模塊
- |-----index.php index.php控制器文件
- |-----content content模塊
- |-----classes content模塊通用類庫
- |-----fields content模塊模型字段
- |-----functions content模塊通用函數庫
- |-----templates content模塊后臺模板文件
- |-----index.php index.php控制器文件
- |-----templates 框架系統前臺模板目錄
- |-----default 默認的模板風格
- |-----content content模塊模板目錄
- |-----category.html 頻道頁模板文件
- |-----list.html 列表頁模板文件
- |-----show.html 內容頁模板文件
- |-----config.php 模板配置文件
- |-----phpsso_server phpsso主目錄
- |-----statics 網站素材文件目錄
- |-----css css文件
- |-----images images文件
- |-----js js文件
- |-----uploadfile 上傳附件
- |-----admin.php 后臺入口文件
- |-----index.php 前臺入口文件
五、phpcms v9中的url路由規則:
瀏覽器中輸入 http://www.mycms.com/index.php?m=content&c=index&a=list&catid=1 回車時,默認情況下會找到:
- phpcms 框架主目錄
- |-----modules 模塊目錄
- |-----content content模塊
- |-----index.php index.php控制器中list方法來顯示列表頁面
到底是不是呢?我們打開index.php控制器文件,并在index方法中添加一些代碼,運行輸出,證明確實如我們所料.
我們可以將瀏覽器中的url歸納如下:
http://域名/入口文件?m=模塊名&c=控制器&a=方法名&catid=參數值.
當我們在瀏覽器中輸入http://www.49028c.com/index.php 后面沒有跟任何參數,回車時,默認情下會將首頁顯示出來.
這是因為phpcms v9為我們指定了一個默認執行的模塊、控制器和方法,默認控制器的設置在 "caches/configs/routes.php" 配置文件中進行設置的,我們可以重新設置默認的控制器.
六、欄目的添加
1、pc設計者認為,欄目詳情頁的數據都應該屬于一個模型,所以在添加欄目時,必須給欄目指定一個模型,至于要選擇什么模型,完全取決于欄目詳情頁要顯示什么類型的內容.
詳情頁:文章信息類的內容 文章模型
詳情頁:圖片類信息 圖片模型
詳情頁:下載東西 下載模型
詳情頁:播放視頻 視頻模型
2、如果以上模型還不能滿足項目的需要,那么我們還可以自定義模型,通常情況下,一個網站是由多種模型的數據來組成的.
3、欄目添加選項:
欄目名稱:在網站靜態化時,創建一個以此目錄名命名的目錄來存放當前欄目下相關的模板文件.
4、pc的設計者認為,每個欄目會對應當前所選模型的三個模板文件:
頻道頁模板文件
列表頁模板文件
內容頁模板文件
這些模板文件所在位置:phpcms/templates/default/content/ 目錄下,如果想修改模板文件,只需要到此目錄下找到對應的模板文件進行修改就可以了.
頻道頁:category_*.html
列表頁:list_*.html
內容頁:show_*.html
至此,欄目各頁面與模型的三個模板文件對應起來了.
注意:頻道頁面的顯示是有條件的,當前欄目必須有子欄目才可以.
5、欄目添加成功后,欄目信息被存儲到了v9_category數據表中,同時還被緩存到了phpcms/caches/caches_common/category_content.cache.php文件中,這個緩存文件非常重要,一定要引起足夠的重視,前臺的很多數據都是直接從此緩存文件中獲取來的.
七、項目的部署:
1、素材文件:
- statics
- |-----images
- |-----cmsimages 項目圖片文件
- |-----js
- |-----cmsjs 項目js文件
- |-----css
- |-----cmscss 項目css文件
- phpcms
- |-----templates
- |-----new 新的模板風格
- |-----content 內容模塊模板文件
- |-----category.html 頻道頁模板文件
- |-----list.html 列表頁模板文件
- |-----show.html 內容頁模板文件
- |-----config.php 添加模板文件的配置
- //或者
- |-----default
- |-----content 內容模塊模板文件
- |-----category_shetu.html 頻道頁模板文件
- |-----list_shetu.html 列表頁模板文件
- |-----show_shetu.html 內容頁模板文件
- |-----config.php 配置新添加的模板文件
注意:模板文件的命名規范.
新聞熱點
疑難解答