濮阳杆衣贸易有限公司

主頁 > 網(wǎng)站建設(shè) > 建站知識(shí) > 優(yōu)化DEDECMS默認(rèn)模板 提升網(wǎng)頁打開速度

優(yōu)化DEDECMS默認(rèn)模板 提升網(wǎng)頁打開速度

POST TIME:2020-03-29 00:10

我們有時(shí)會(huì)發(fā)現(xiàn)在使用織夢模板的默認(rèn)模板時(shí),訪問速度有點(diǎn)慢,經(jīng)查證這和頂部JS調(diào)用以及代碼冗余有關(guān)。事實(shí)上網(wǎng)站程序的優(yōu)化多數(shù)原則是代碼簡練,減少JS調(diào)用等。這里分別從主頁、文章列表頁、文章內(nèi)容頁來分別介紹DEDE默認(rèn)模板優(yōu)化,經(jīng)測試,優(yōu)化后,網(wǎng)站速度有極大提升。

一、主頁模板(index.htm)

下面的JS文件和JS代碼可以根據(jù)需要情況看是否需要?jiǎng)h除,最好能全部刪除,但是全部刪除會(huì)影響一些功能,比如會(huì)員登錄狀態(tài)、圖文資訊的滾動(dòng)等,這里個(gè)好的方法,就是把所有這里的JS寫入一個(gè)單獨(dú)的文件,這樣調(diào)用時(shí)只需要一次就可以了,注意調(diào)用的路徑。

JS文件解釋說明
/js/jquery.cookie.js
主要的作用記錄換膚功能的cookies,用于保留用戶的選擇;

/js/changeSkin.js
用于換膚功能的具體實(shí)現(xiàn)代碼;

/js/pic_scroll.js
“圖文資訊”滾動(dòng)的地方;

/images/js/j.js
經(jīng)過壓縮后的java代碼,主要作用是在默認(rèn)模板中的中間部分的橫向滾動(dòng)的“圖片資訊”的地方;
同時(shí),換膚功能也和該功能有關(guān)聯(lián)

/include/dedeajax2.js
引入織夢模板 的ajax框架,作用主要是在模板中的一些特效,比如登陸后改變登陸狀態(tài)、內(nèi)容頁頂與踩、評(píng)論列表的支持與反對(duì)等等(如果您不需要上述功能,這段代碼可以刪除);

Javascript代碼

function CheckLogin(){
var taget_obj = document.getElementById('_userlogin');
myajax = new DedeAjax(taget_obj,false,false,'','','');
myajax.SendGet2("{dede:global.cfg_cmspath/}/member/ajax_loginsta.php");
DedeXHTTP = null;
}
主要用途是判斷會(huì)員是否登錄,如果已經(jīng)登錄,則在互動(dòng)中心的會(huì)員框里顯示/member/ajax_loginsta.php登陸后的內(nèi)容;

$(function(){
$("dl.tbox dt span.label a[_for]").mouseover(function(){
$(this).parents("span.label").children("a[_for]").removeClass("thisclass").parents("dl.tbox").children("dd").hide();
$(this).addClass("thisclass").blur();
$("#"+$(this).attr("_for")).show();
});
$("a[_for=uc_member]").mouseover();
});
主要用途是首頁右側(cè)的互動(dòng)中心中踩踩、評(píng)論、會(huì)員三個(gè)選項(xiàng)的切換效果;

function multi(pagenum,tagid)
{
var taget_obj = document.getElementById(tagid);
var taget_obj_page = document.getElementById("page_"+tagid);
myajax = new DedeAjax(taget_obj,false,false,'','','');
myajax.SendGet2("/plus/arcmulti.php?mtype=0&pnum="+pagenum+'&tagid='+tagid);
myajax = new DedeAjax(taget_obj_page,false,false,'','','');
myajax.SendGet2("/plus/arcmulti.php?mtype=1&pnum="+pagenum+'&tagid='+tagid);
DedeXHTTP = null;
}
主要用途是右側(cè)的推薦內(nèi)容分頁,也是DedeV5.6版的新增功能(arclist標(biāo)簽分頁);P.s:其實(shí)默認(rèn)的ajax評(píng)論也是通過此種方式制作的。

function check(){
if(document.formsearch.searchtype.value=="")
document.formsearch.action="http://www.google.cn/custom"
else
document.formsearch.action="{dede:field name='phpurl'/}/search.php"
}
作用是頂部的goole搜索那,具體的含義,當(dāng)我們選擇的搜索類型(searchtype)為空,那么提交的目標(biāo)地址就是http://www.google.cn/custom,否則就提交到站內(nèi)搜索的地址/plus/search.php!

二、默認(rèn)文章列表模板(list_article.htm)

這里頂部的JS全部去掉就可以了,這樣就可以大大提高訪問速度了。

三、文章內(nèi)容頁模板(article_article.htm)

這是目前為止最好的DEDE文章內(nèi)容頁因點(diǎn)擊次數(shù)引起網(wǎng)頁加載慢的解決方法

下面代碼放在要顯示文章點(diǎn)擊詞素的位置(紅色部分是未顯示廣告之前顯示的內(nèi)容,可以是文字或是圖片,當(dāng)然不要也行)

<span id=vvclick> 加載中 </span>

當(dāng)然“加載中”也可以替換為圖片

下面的代碼放到網(wǎng)頁最底部最好放在</html>之前(藍(lán)色部分是點(diǎn)擊次數(shù)代碼)

<SPAN class=spanclass id=span_vvclick>
<script src="{dede:field name='phpurl'/}/count.php?view=yes&aid={dede:field name='id'/}&mid={dede:field name='mid'/}" type='text/javascript' language="javascript"></script> </SPAN>
<SCRIPT>vvclick.innerHTML=span_vvclick.innerHTML;span_vvclick.innerHTML="";</SCRIPT>

原理: 由于網(wǎng)頁是由上往下執(zhí)行代碼,所以前面會(huì)暫時(shí)顯示 "點(diǎn)擊次數(shù)載入中..." 等到執(zhí)行完整個(gè)頁面后, 前面才會(huì)調(diào)用出來。所以我們把點(diǎn)擊次數(shù)的代碼這些放到最后執(zhí)行讓前面調(diào)用, 就不會(huì)影響站點(diǎn)頁面中正常的內(nèi)容輸出的速度了。這也是網(wǎng)上最經(jīng)典的廣告最后加載代碼了,提供給大家使用!

還有就是頂部的JS調(diào)用的處理方法同前面主頁JS的處理方法相同,刪除部分JS,刪除的時(shí)候要特別注意是否影響了其他功能。最好的方法是寫入一個(gè)文件,另存為,最后只調(diào)用一次。注意調(diào)用的路徑。



收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
宝兴县| 抚顺市| 彭阳县| 波密县| 晋城| 乐昌市| 宜宾县| 新民市| 淮安市| 乌拉特中旗| 调兵山市| 福州市| 滦平县| 汉中市| 枝江市| 敦化市| 贡嘎县| 景洪市| 尼玛县| 红桥区| 兰考县| 吉木乃县| 泰兴市| 西宁市| 沙洋县| 郓城县| 乌拉特后旗| 留坝县| 仁布县| 福安市| 莒南县| 江孜县| 萨嘎县| 清水县| 乌拉特前旗| 磐石市| 临朐县| 高邑县| 民县| 灵川县| 乐业县|