個人使用瑣記-thinkcmf

ThinkCMF是一款基于ThinkPHP+MySQL開發(fā)的中文內容管理框架。ThinkCMF提出靈活的應用機制旺入,框架自身提供基礎的管理功能门怪,根據(jù)自身的需求以應用的形式進行擴展坐梯,每個應用都能獨立的完成自己的任務郎汪,也可通過系統(tǒng)調用其他應用進行協(xié)同工作。所以在ThinkCMF中你只是增加了一個APP劝萤,每個獨立運行互不影響渊涝,便于靈活擴展和二次開發(fā)。

代碼遵循Apache2開源協(xié)議床嫌,免費使用跨释,對商業(yè)用戶也無任何限制


thinkcmf里的simpleboot開發(fā)框架,完全基于bootstrap 2.3.2,但它擁有更多的組件厌处,同時支持IE7+鳖谈,可以直接使用,不用再次安裝


ThinkCMF特別開發(fā)規(guī)范

1阔涉、應用后臺控件器放在應用Controller目錄中缆娃,最好不要存放在Admin/Controller下,保證應用模塊獨立

2瑰排、應用后臺控件器命名以****adminController.class.php或者Admin****Controller.class.php命名的是后臺Controller, 在后臺菜單導入時會自動識別

3贯要、應用后臺控件器方法命名:用戶無法訪問的內部方法,請以下劃線(_)開頭椭住;

4崇渗、附件保存路徑,要相對于upload目錄京郑,只保存之后路徑

5宅广、使用I函數(shù)獲取post和get的數(shù)據(jù)

6、模板中php代碼注釋都使用/**/的方式些举,//這種方式一定不要用跟狱,否則debug關閉后會有各種問題!

7金拒、各種php文件最好別加?>結束兽肤,防止響應多余字符


ThinkCMF目錄結構

|--admin? ? ? ? ? ? ? ? ? ? ? /管理后臺URL重定向目錄套腹,你可以將文件夾名改為任何你喜歡的

|--themes? ? ? ? ? ? ? ? /后臺模板文件目錄

|--application? ? ? ? ? ? ? ? /應用目錄

|--data? ? ? ? ? ? ? ? ? ? ? /各類數(shù)據(jù)存放目錄绪抛,包括緩存數(shù)據(jù)

|--simplewind? ? ? ? ? ? ? ? /核心包,無特殊情況請勿改動

|--public? ? ? ? ? ? ? ? ? ? /靜態(tài)文件存放包电禀,包含bootstrap資源

|--themes? ? ? ? ? ? ? ? ? ? /前臺模板文件目錄

application 目錄結構:

|--application

|--Admin? ? ? ? ? ? ? ? ? ? /后臺管理應用

|--Api? ? ? ? ? ? ? ? ? ? ? /公共接口

|--Asset? ? ? ? ? ? ? ? ? ? /資源管理應用

|--Comment? ? ? ? ? ? ? ? ? /評論應用

|--Common? ? ? ? ? ? ? ? ? /應用公共模塊

|--Portal? ? ? ? ? ? ? ? ? /門戶應用



應用就是application目錄下的一個模塊幢码,它是獨立于其它模塊存在的,有自己獨立的運行空間尖飞;

例如Blog應用目錄結構:

Controller 控制器目錄(必備)

Common 函數(shù)庫(可選)

Conf 配置(可選)

Lang 多語言包(可選)

Menu 后臺菜單(可選)

Model 模型(可選)

nav.php 前臺導航文件(可選)

而在 CMF 中應用的 View 是獨立于應用之外的症副,它分為前臺view 和后臺view, 分別存放在themes/前臺主題/應用名店雅,和admin/themes/后臺主題/應用名下;

創(chuàng)建一個blog應用

1贞铣、在application/Common/Conf/config.php文件MODULE_ALLOW_LIST數(shù)組里加上應用名Blog

2闹啦、在application下創(chuàng)建上面講到的Blog目錄結構;



前臺控制器

前臺控制器位于應用的Controller目錄下辕坝,一般繼承Common\Controller\HomebaseController,如果你需要用戶登錄才訪問或操作此控制器窍奋,就要繼承Common\Controller\MemberbaseController

后臺控制器

在某個應用Controller目錄下創(chuàng)建一IndexadminController.class.php文件(注意:這里有文件命名規(guī)則酱畅,以****adminController.class.phpAdmin****Controller.class.php命名的是后臺Controller, 在后臺菜單導入時會自動識別

就要用戶登錄才能訪問琳袄,就繼承自AdminbaseController這個控制器。

不用管理員登錄也能被訪問到纺酸,只給IndexadminController加個空的_initialize()方法(初始化窖逗,這里不執(zhí)行父類的初始化方法);



模板定義:



前臺模板位于themes目錄下餐蔬,后臺模板位于admin/themes目錄下碎紊,前后臺都是多主題機制的,可以分開設置不同的主題;


這是前臺模板的結構用含;應用之間彼此分開矮慕,Portal目錄下就對應的是application/Portal應用的模板文件;

一個模板文件大致路徑是這樣的:themes/主題名/應用名/控制器名/操作名+(.html) 或者 themes/主題名/應用名/自定義模板名+(.html)啄骇,如:themes/simplebootx/User/Profile/password.html,themes/simplebootx/Portal/index.html;

應用名以后的部分痴鳄,開發(fā)者可以用控制器的display方法指定模板的具體文件名



模板主題

cmf分為前臺模板主題和后臺模板主題,兩都分開獨立設置缸夹,它們也在不同的目錄下痪寻,前臺模板在themes下,后臺模板在admin/themes下虽惭。

前后臺是都支持多主題的橡类,如果我想增加的主題,只要把默認主題復制后芽唇,目錄名改一下放在前后臺主題目錄下顾画,就是一個新的主題,當然你完全可以從零開始寫匆笤,只要確保文件名對應就可以了研侣;要注意模板命名格式,英文字母加數(shù)字的形式

注意你在打開模板方案里可能會發(fā)現(xiàn)_en-us,_mobile,_mobile_en-us結尾的類似模板炮捧,這些都是相應模式下的模板庶诡,比如,你后臺設置的是simplebootx,如果是手機用戶系統(tǒng)會自動判斷咆课,并使用simplebootx_mobile 模板末誓,如果用戶是英文的系統(tǒng)也會自動判斷使用simplebootx_en-us模板扯俱;



應用開發(fā)流程:

http://www.thinkcmf.com/docs/cmfx/extends/application_flow.html



全局變量:

{$site_name}/站點名稱

{$site_host}/站點域名

{$site_root}/安裝目錄

{$site_icp}/備案信息

{$site_admin_email}/管理員郵箱

{$site_tongji}/頁面統(tǒng)計代碼

{$site_seo_title}/SEO標題

{$site_seo_keywords}/SEO關鍵字

{$site_seo_description}/SEO描述

{$site_copyright}/版權信息



模板常量:

__ROOT__:網(wǎng)站根目錄,不帶/;

__WEB_ROOT__: 網(wǎng)站資源根目錄,不帶/,如果以前版本用__ROOT__來定位網(wǎng)站資源,x2.2.0以后最好用這個常量,方便以后cdn切換

__TMPL__:當前模板根目錄喇澡,帶/;

? ? ?如:前臺 simplebootx 模板根目錄是/themes/simplebootx/

? ? ?后臺 simplebootx模板根目錄是/admin/themes/simplebootx/

__PUBLIC__:public目錄,不帶/;



包含文件:

tc_include

tc_include是前臺模板包含文件的方法迅栅,用于替換原來的include的標簽,實現(xiàn)更多功能

<tc_include file='Public:nav'>加載當前模板的Public/nav.html文件



驗證碼晴玖,幻燈片库继,評論,ajax操作時的彈框等都已經(jīng)組織在框架里面窜醉。

還有一些好用的函數(shù)宪萄,比如獲取當前用戶信息、生成隨機數(shù)榨惰、發(fā)送郵件拜英、分頁

注意:

1、平時一定要把data/conf/db.php文件做個備份

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末琅催,一起剝皮案震驚了整個濱河市居凶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌藤抡,老刑警劉巖侠碧,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異缠黍,居然都是意外死亡弄兜,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進店門瓷式,熙熙樓的掌柜王于貴愁眉苦臉地迎上來替饿,“玉大人,你說我怎么就攤上這事贸典∈勇” “怎么了?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵廊驼,是天一觀的道長据过。 經(jīng)常有香客問我,道長妒挎,這世上最難降的妖魔是什么绳锅? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮饥漫,結果婚禮上榨呆,老公的妹妹穿的比我還像新娘罗标。我一直安慰自己庸队,他們只是感情好积蜻,可當我...
    茶點故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著彻消,像睡著了一般竿拆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上宾尚,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天丙笋,我揣著相機與錄音,去河邊找鬼煌贴。 笑死御板,一個胖子當著我的面吹牛,可吹牛的內容都是我干的牛郑。 我是一名探鬼主播怠肋,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼淹朋!你這毒婦竟也來了笙各?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤础芍,失蹤者是張志新(化名)和其女友劉穎杈抢,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體仑性,經(jīng)...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡惶楼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了诊杆。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鲫懒。...
    茶點故事閱讀 39,711評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖刽辙,靈堂內的尸體忽然破棺而出窥岩,到底是詐尸還是另有隱情,我是刑警寧澤宰缤,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布颂翼,位于F島的核電站,受9級特大地震影響慨灭,放射性物質發(fā)生泄漏朦乏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一氧骤、第九天 我趴在偏房一處隱蔽的房頂上張望呻疹。 院中可真熱鬧,春花似錦筹陵、人聲如沸刽锤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽并思。三九已至庐氮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宋彼,已是汗流浹背氮兵。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工寺酪, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留馏慨,地道東北人哥蔚。 一個月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像莱坎,于是被迫代替她去往敵國和親桃熄。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,611評論 2 353

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理型奥,服務發(fā)現(xiàn)瞳收,斷路器,智...
    卡卡羅2017閱讀 134,651評論 18 139
  • 轉載自cr180大神DiscuzX2.5完整目錄結構【source程序文件庫】 /source/admincp后臺...
    cndaqiang閱讀 848評論 1 2
  • MetInfo應用開發(fā)文檔 1. 開發(fā)準備 1.1 前言 MetInfo應用制作介紹MetInfo企業(yè)網(wǎng)站管理系統(tǒng)...
    layjoy閱讀 12,079評論 4 5
  • Php:腳本語言厢汹,網(wǎng)站建設螟深,服務器端運行 PHP定義:一種服務器端的HTML腳本/編程語言,是一種簡單的、面向對象...
    廖馬兒閱讀 2,137評論 2 38
  • 已經(jīng)同步到gitbook烫葬,想閱讀的請轉到gitbook: Django 1.10 中文文檔 Writing you...
    leyu閱讀 793評論 1 1