也許有些讀者并不了解dedecms,這里簡單介紹一下:DedeCMS是一個自由和開放源碼的內容管理系統,它是一個可以獨立使用的內容發布系統(CMS)。織夢內容管理系統(DedeCms) 以簡單、實用、開源而聞名,是國內最知名的php開源網站管理系統,也是使用用戶最多的PHP類CMS系統,簡單來說,就是用來搭建后臺而使用的。(文中織夢跟dedecms是同一個意思)
要使用dedecms,首先要去下載:下載dedecms
多圖警告,建議電腦上看!??!
①:接下來是安裝織夢。首先將織夢解壓后放在一個文件夾,并將其放在服務器路徑下。比如在www文件夾下(我用的是phpstudy)創建一個文件夾dedecms,將解壓后的織夢放在這個文件夾里面,如圖:
然后打開http://localhost/dedecms,跳轉到這個頁面
接下來一步一步填寫即可:
左邊那張不用做修改,右邊按自己的填寫,注意的是數據庫密碼用戶正確,數據表前綴建議不改,數據庫名稱隨意。管理員密碼用戶名隨意,只要你記住。網站名稱,管理員郵箱可以改。網址、安裝目錄本地的話可以不用改
不用體驗就忽略它(一般直接忽略,所以不打勾,點繼續)
安裝完成,是不是很簡單?你可以用管理員用戶和密碼登錄后臺
②:登錄之后,進入這個界面,熟悉一下后臺界面劑功能,也可以通過登錄localhost/dedecms/dede進入后臺,當然這是我這個測試的路勁
(使用的比較多的是紅色區域)
核心:管理頻道,管理欄目(這個是必用到的)
生成:更改主頁HTML、更新欄目HTML、更新文檔HTML等
系統:可以設置很多東西。比如設置系統參數,去除水印、數據庫備份還原等
還可以添加新的變量
前面只是一些認識安裝,下面通過一個簡單的例子講解一下
首先我想實現一個文章發布的功能,點擊標題查看文章,文章有標題、圖片和文字
具有這樣的功能,點擊相應的文章查看,文章列表跟內容都是動態由后臺生成:
第一步:新增模型
分析:從數據庫的角度,要創建3個字段,分別是文章tiitle、圖片img、以及內容,回到dede,先登錄,這里的后臺路勁是localhost/dedecms/dede,登陸后點擊紅色區域
-------->
里面的6個列表(商品、軟件、圖片集、普通文章、專題、分類信息)都是系統的,并不是我們想要是,所以忽略他,我們重新建一個模型,建模型就相當于在數據庫中創建表,里面的數據也就是我們之后欄目(模板頁面)要調用的。點擊增加新模型。
這個頁面需要修改的也不多,頻道id跟名字標識改不改無所謂,頻道名稱可以改,這里改為測試頻道。附加表就是數據庫里創建的表,名字該不該無所謂,刪除已有表可以打勾。然后這一頁其他的可以不用動,完成。
創建完之后,有興趣可以打開phpmyadmin,就會看到在dedetest數據庫里面新增了一個名為dede_addon17的表。其中dedetest數據庫使我們安裝的時候就在數據庫中創建了,名字是我們自己定義的,可以返回前面安裝那里查看。打開表里面是沒有數據的。
回到dede。創建完模型自后,右邊可以設置字段。了解過php跟數據庫的應該知道字段是什么。字段就是在數據庫中新增一個列,存放一種類型數據。比如通訊錄中名字字段等。在dedecms中,發布內容的時候,系統會自動生成一些字段。常用的系統字段有標題title(必有的)、縮略圖picname(默認獲取第一張圖片)、文章摘要description(如果有內容字段,默認截取前面一段,若沒,可以自己填寫),下面整理一段文字,詳細說明一下
arclist底層模板字段,可以調用的字段列表
用DedeCMS做站,arclist是用得最多的標簽,因為他是調用文章的基本標簽,功能也非常強大,他的底層字段比較多,我們平時使用還沒有用到一半,但因為我們并不知道所有的底層字段,本來是標簽自帶的東西,我會還在那里想怎么去調用想要的數據,所以了解全部的底層模板字段,做站的時候會事半功倍。下面我就把arclist標題支持的所有的字段列出來,并配上說明。
復制代碼
1.[id] => 文章ID
2.[typeid] => 欄目ID
3.[typeid2] => 副欄目ID
4.[sortrank] => 文檔排序
5.[flag] => 自定義屬性
6.[ismake] => 是否生成靜態HTML
7.[channel] => 頻道模型ID
8.[arcrank] => 瀏覽權限
9.[click] => 點擊次數
10.[money] => 需要消耗金幣
11.[title] => 文章標題
12.[shorttitle] => 文章短標題
13.[color] => 標題顏色
14.[writer] => 文章作者
15.[source] => 文章來源
16.[litpic] => 縮略圖
17.[pubdate] => 更新時間
18.[senddate] => 發布時間
19.[mid] => 發布會員ID
20.[keyWords] => 文章關鍵字
21.[lastpost] => 最后回復時間
22.[scores] => 消耗積分
23.[goodpost] => 好評數
24.[badpost] => 差評數
25.[voteid] => 投票ID
26.[notpost] => 是否允許回復
27.[description] => 文章摘要
28.[filename] => 文件名稱
29.[dutyadmin] => 負責審核管理員的ID
30.[tackid] => 我也不知道
31.[mtype] => 算定義類別
32.[weight] => 排序權重
33.[typedir] => 欄目生成目錄
34.[typename] => 欄目名稱
35.[corank] => 欄目瀏覽權限
36.[isdefault] => 我也不知道
37.[defaultname] => 欄目的默認名稱
38.[namerule] => 欄目文章命名規則
39.[namerule2] => 欄目列表命名規則
40.[ispart] => 欄目屬性(頻道或最終列表)
41.[moresite] => 是否開啟了多站點支持
42.[siteurl] => 開啟多站點之后的站點域名
43.[sitepath] => 開啟多站點之后的站點路徑
44.[infos] => 文章摘要
45.[info] => 文章摘要
46.[arcurl] => 文章URL
47.[typeurl] => 欄目URL
48.[picname] => 縮略圖
49.[stime] => YYYY-MM-DD格式的更新時間
50.[typelink] => 欄目鏈接
51.[image] => 縮略圖 完整的圖片標簽
52.[imglink] => 帶鏈接的圖片標簽
53.[fulltitle] => 文章完整標題
54.[textlink] => 完整的A標簽文章鏈接
55.[phpurl] => 插件目錄
56.[plusurl] => 插件目錄
57.[memberurl] => 個人中心目錄
58.[templeturl] => 模板目錄
前面說了一大推,其實想實現這個例子,也就很簡單了:接著剛剛創建的模型,右邊不用新增字段,因為我們可以都用系統字段標題用title、圖片用picname、文章內容暫時就用摘要,雖然字數不多,簡單一點。能直接使用系統字段就不去新增字段。這樣子頻道模型就創建好了。
第二步:將寫好的前端界面放在dede目錄下。
首先看看簡單的前端界面
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>articlelist</title></head><body>
<ul> <li><a href="###">文章一</a></li> </ul></body></html>
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>list</title></head><body> <ul> <li><a href="###">文章一</a></li> <li><img src="img/1.jpg" alt=""></li> <li>我是文章一的內容</li> </ul></body></html>
就這2個頁面,很簡單。第一個命名為index.html,第二個界面命名為test.html。讓后放在test文件夾下。接下來將test文件夾放在dede目錄下。
就放在:dedecms/templets/default下,這就是dede的默認模板目錄。
放好后如下圖:
從圖片中可以看到,模板的后綴名都是htm的,所以進入tese,將index.html跟test.html改為index.htm和test.htm。到此,就已經將前端模板放好位置了。
第三步:新增網站欄目
回到dede的后臺,點擊新增欄目。
我想先設置一個頻道封面,再在頻道封面里面設置最終列表頁。2者的區別是頻道封面不允許發布文檔,可以顯示多個列表頁。最終列表頁可以發布文檔。
在設置封面頁時,點擊頻道封面,欄目名稱自己定義欄目列表選項使用動態頁,轉到高級選項,
在瀏覽里面找到test文件夾下面的index.htm,將其作為封面模板,然后點確定。就這樣封面模板設置好了。然后再其下面增加子類,就是文章詳情列表
轉到高級選項,將文章模板改為test.htm
到此,欄目就設置好了。
第四步:使用簡單的dede代碼。
第二步的時候直接將2個頁面放在dede下,如果沒有對其代碼進行修改,是無法實現功能的。關于dede的代碼,可以詳情查看手冊。
在詳情頁中調用字段使用{dede:field name='title’/}、{dede:field.title/}
在列表頁調用字段使用:
{dede:list}
我是標題:[field:title/],我的的url:[field:youku_url/]
<br>
我的正文內容:[field:work_body/]
<hr>
{/dede:list}
ps:如果是自定義的字段需要內容模型管理-所選頻道的基本設置-列表附加字段中追加,多個字段用,號分割
在首頁或者任意位置調用字段:
{dede:arclist typeid="12" channelid="17" addfields="youku_url"}
標題是:[field:title/]
<br>
視頻地址:[field:youku_url/]
<hr>
{/dede:arclist}
list跟arclist都可以循環輸出,而list用于當前欄目,主要用于列表頁調用字段,而arclist使用范圍更廣,在首頁或者任意位置調用字段。如果是詳情頁,調用字段時使用{dede:field name='title’/}這種格式輸出。
如果arclist中有自定義字段,并且要輸出此字段時(像上面的優酷地址就是自定義的),就要加上addfields="youku_url",且加上該字段屬于哪個頻道的 channelid="17" 。如果是list中有自定義字段,就在dede中修改。修改方法:內容模型管理--->選擇對應的頻道,點擊更改,在
列表附加字段中寫上字段名。
所以,這樣子修改index.htm跟test.htm
test.htm:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>{dede:global.cfg_webname/}</title> <!--dede中title--></head><body> <ul> <li><a href="{dede:field name='arcurl'/}">{dede:field name='title'/}</a></li> <!--{dede:field name='arcurl'}獲取路勁,{dede:field name='title'}是獲取文章標題--> <li>{dede:field name='senddate' function="MyDate('Y-m-d H:i',@me)"/}</li> <!--獲取發布時間,并且按照后面格式輸出--> <li><img src="{dede:field name='picname'/}" alt=""></li> <!--獲取縮略圖,默認第一張圖片--> <li>{dede:field name='description'/}</li> <!--獲取摘要--> </ul></body></html>
index.htm:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>{dede:global.cfg_webname/}</title> <link rel="stylesheet" href="{dede:global.cfg_templets_skin/}/test/CSS/index.css"> <!--如果有css文件,要這么加,修改路勁方法參考--></head><body> <ul> {dede:arclist typeid="1"} <!--頻道ID是1--> <li><a href="[field:arcurl/]">[field:title/]</a>[field:arcurl/]</li> {/dede:arclist} </ul> <script src="{dede:global.cfg_templets_skin/}/test/js/jquery-1.11.3.min.js"></script></body></html>
到此,后臺搭建成功。
第五步:更改網站主頁,以及解決不能及時更新欄目問題。
更改主頁:選擇主頁模板選擇test的index.htm,點擊更新主頁。
及時更新欄目:
在性能選項下修改:
將緩存設置為1秒,這樣隨時都是最新的。下面3個選項也勾是。
也可以手動更新網站:生成---->一鍵更新網站---->開始更新
第六步:發布第一篇文章。
點擊測試詳情頁進入發布
從圖中可以看到發布文章的時候有很多選項,這些都可以通過系統字段獲取。
效果如下:
(后面的尾巴是文章一的鏈接,我也將他輸出來了),點擊文章一后
這就是發布的文章
繼續發布:
可以看到每一篇文章的路徑都不一樣。
暫時先寫到這里,有新的心得再繼續更新。
修改dede后臺界面
login:dede-templets-login.htm
系統主頁:dede-templets-index2.htm
主體內容在index_body.htm文件
干掉:
$(function()
{
$.get("index_testenv.php",function(data)
{
if(data !== '')
{
$("#__testEvn").html(data);
}
})
})
提示版權信息:
include-common.fnc.php
更改權限:
系統-系統基本參數-用戶組設定
刪除或者隱藏會員菜單選項:
dede-index_menu.php添加:
echo "<style>#link6,#sunitems5_1{display:none;}#sunitems2_100{display:none;}#sunitems2_5{display:none;}</style>";
新聞熱點
疑難解答