做網站,我們是認真的!

網站適配電腦+手機端,僅1280元,送2000M阿里云服務器,送com域名+免費備案
網站前端采用靜態系統顯示,后端動態管理,我們承諾網站包收錄,完成網站之后把源碼給客戶!

觀點

互聯網+時代,說建站,談運營與網絡營銷

dedecms專題文章列表的模板修改

時間:2020-12-21

如果沒有進行特別的設置,專題的文章列表顯示默認是采用的default下面的article_spec.htm文件作為模板。
這個模板文件很簡單,前面是該專題的一些信息,下面是分割線,分割線以下就是現實節點和節點文章的模塊。
這個模塊按理說應該是專題模板最重要的內容,可是只有下面幾行:
<div class="speciallist">
  {dede:field.note/}
</div>
實在是讓人出乎意料-這讓人怎么改啊,連html標簽都看不到。雖然不滿,但是既然用了dedecms,就只能這樣了,也許作者是希望減少用戶的工作量吧,可以理解。
 
要靈活的修改這個頁面顯示節點文章的樣式,我想到了兩種辦法:
  1. 直接在瀏覽器顯示該頁面時查看html代碼的方式。
不管你后臺是如何做的,顯示在瀏覽器上的才是最終結果。所以我只需看你最終的html代碼,查看用到了那些html元素,在將相關元素的css寫在樣式表里面。這里有點小技巧,用firefox的firebug可以很容易的完成這個工作,至于怎么用,這里就不講解了,可以直接百度。
 
                            <dl class="tbox">
                                     <dt><strong>節點名稱</strong></dt>
                                     <dd>
                                               <ul class="d1 ico3">
                             節點文章列表
                                               </ul>
                                     </dd>
                            </dl>
知道這個以后,修改樣式應該不難了吧。
 
  1. 雖然上訴的方法不麻煩,但是總覺得不靈活。那我們直接看源碼,然后隨意的修改吧。
處理專題主題調用標簽{dede:field.note/}的php文件是include/taglib/channel/specialtopic.lib.php.
 
找到ch_specialtopic()函數的第五行
$tempStr = GetSysTemplets('channel_spec_note.htm');
從這里可以看到channel_spec_note.htm這個文件決定了節點和節點文章的顯示。
channel_spec_note.htm文件放在系統模板文件里面templets/system/channel_spec_note.htm
打開該文件我們發現里面的html代碼和在瀏覽器查看的幾乎一模一樣:
                       <dl class="tbox">
                                     <dt><strong>~notename~</strong></dt>
                                     <dd>
                                               <ul class="d1 ico3">
                             ~spec_arclist~
                                               </ul>
                                     </dd>
                            </dl>
 
在實際運行的時候notename會被替換成節點名,~spec_arclist~
會被替換成節點文章超鏈接。~spec_arclist~其實是一個字符串:形如<li>文章超鏈接</li>
找到這個文件可以修改除了li之外的所以html元素,但是li我們還是不能為其加上類和id。
這個應該是在處理的php代碼里面。未完待續。。。
0
首頁
案例
關于
聯系
凯时平台