首頁 > CMS教程 > DEDECMS > 如何讓dedecms實作shtml

如何讓dedecms實作shtml

藏色散人
發布: 2019-12-07 10:50:19
原創
2211 人瀏覽過

如何讓dedecms實作shtml

如何讓dedecms實作shtml?

讓dedecms實作shtml包含,這個是十分簡單,也是十分輕鬆的問題。我們可以透過dedecms的二次開發,實現dedecms頂部導航,中間部分,右邊公共部分,以及底部

  

推薦學習:織夢cms

讓dedecms實作shtml包含,這個是十分簡單,也是十分輕鬆的問題。我們可以透過對dedecms的二次開發,實現對dedecms頂部導航,中間部分,右邊公共部分,以及底部,都有一個很好的支持,從而減少html生成的時候頻繁的消耗系統資源去生成dedecms的html功能。這樣可以加快dedecms產生html的速度。

     首先我們要實作一個對dedecms欄位右邊實作shtml包含。有關dedecms配置shtml環境,上篇文章都講述過了。

     1:先建立右邊公用範本templates/default/right.htm

     2:寫出下列標籤

程式碼如下:

function lib_shtml(&$ctag,&$refObj)
{
if(isset($_GET['tid'])){
return file_get_contents('../data/'.$refObj->Fields['id'].'right.htm');
}else{
return &#39;<!--#include virtual="&#39;.$GLOBALS[&#39;cfg_cmspath&#39;].&#39;/data/&#39;.$refObj->Fields[&#39;id&#39;].&#39;right.htm"-->&#39;;
}
}
登入後複製

    3:生成欄目的時候,產生對應欄目的右邊。

   arc.listview.class.php
登入後複製

var $tcp1;
var $tcp3;</p> <p> $this->tcp1 = new DedeTagParse();
$this->tcp1->SetRefObj($this);
$this->tcp1->SetNameSpace("dede", "{", "}");
登入後複製

     載入right.htm範本

  $this->tcp1->LoadTemplate($GLOBALS[&#39;cfg_basedir&#39;].$GLOBALS[&#39;cfg_templets_dir&#39;]."/".$GLOBALS[&#39;cfg_df_style&#39;]."/right.htm");
登入後複製

    產生html

   $file = $this->Fields[&#39;id&#39;].&#39;right.htm&#39;;
            $rightfile = $GLOBALS[&#39;cfg_basedir&#39;].$GLOBALS[&#39;cfg_cmspath&#39;]."/data/".$file;
           
            if(!file_exists($rightfile)){
                $this->tcp1->SaveTo($rightfile);
           
            }else{
                if((time()-filectime($rightfile))>3600){
                    $this->tcp1->SaveTo($rightfile);
                }
            }
登入後複製

      將值賦值

#

     MakeOneTag($this->tcp1,$this);
登入後複製
##  4:#  4:# 模板中直接呼叫{dede:shtml/}

   後台生成,就完成了讓dedecms實作shtml包含.

以上是如何讓dedecms實作shtml的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板