代理加盟 2020全新代理計劃 賺錢+省錢雙管齊下,獨立平臺,豐厚利潤!

您現在的位置: 秀站網 > 織夢大學 > 使用教程 >

DedeCMS自定義宏標記靜態頁面部分動態顯示

來源:本站原創 發布時間:2019-03-30 00:00:00熱度:我要評論(0

免費下載,無需注冊無需充值

       靜態頁面相對動態頁面更利于優化,其實本來沒有太大區別,動態頁面維護更方便,但用戶每次訪問都讀取數據庫,對服務器有一定要求。如果需要在靜態頁面增加動態內容主要有以下方法,一是用Ajax異步加載文章;二是用自定義宏標記。

       自定義宏標記并不是實時的,有緩存時間,本文將介紹的修改方法。

建立自定義宏標記隨機動態調用文章

DedeCMS自定義宏標記

       增加名為Hot的標記,在正常顯示內容里面填寫隨機文章通用標簽(orderby根據實際情況修改),其他默認即可。

{dede:arclist row="10" titlelen="38" orderby="rand"}
<li><a href="[field:arcurl/]" target="_blank">[field:title/]</a></li>
{/dede:arclist}

DedeCMS自定義標記方法

       用js調用并取消緩存才能動態顯示,下面橙色部分是增加內容。

<script src='/plus/mytag_js.php?aid=1&nocache=1' language='javascript'></script>

另一種自定義宏標記動態調用方法

       找到/plus/mytag_js.php,復制一份并另存為mytag_js_hot.php。打開該文件,替換成下面代碼

<?php
/**
 *自定義標簽js調用方式(調用熱點文章)
 */
require_once(dirname(__FILE__).'/../include/common.inc.php'); 
require_once(DEDEINC.'/arc.partview.class.php'); 
if(isset($arcID)) $aid = $arcID; 
$arcID = $aid = (isset($aid) && is_numeric($aid)) ? $aid : 0; 
if($aid==0) die(" document.write('Request Error!'); "); 

//這是新加的代碼,表示typeid 
if(isset($typeID)) $tid = $typeID; 
$typeID = $tid = (isset($tid) && is_numeric($tid)) ? $tid : 0; 
if($tid==0) die(" document.write('Request Error!'); "); 
$pv = new PartView($typeid=$typeID); 
$row = $pv->dsql->GetOne(" SELECT * FROM `dede_mytag` WHERE aid='$aid' "); 
if(!is_array($row)) 
{ 
$myvalues = " "; 
} 
else 
{ 
$tagbody = $row['normbody']; 
$pv->SetTemplet($tagbody, 'string'); 
$myvalues = $pv->GetResult(); 
$myvalues = str_replace('"','\"',$myvalues); 
$myvalues = str_replace("\r","\\r",$myvalues); 
$myvalues = str_replace("\n","\\n",$myvalues); 
$myvalues = " \r\n"; 
//file_put_contents($cacheFile, $myvalues); 
echo $myvalues; //不寫入緩存文件,直接輸出JS代碼 
}

       這個方法本人未測試成功,推薦用第一種方法。

轉載請注明來源網址:http://www.yxrxyy.live/dedecms_jq/1368.html

    發表評論

    評論列表(條)

      北京28是什么彩票