分享

提高DedeCMS文章内容加载速度的两个小方法

 付松林 2015-04-19

织梦默认的文章内容页模板里面我们可以看到很多js,这些js加载会影响文章的现实速度,所以我们需要给它优化一下。

我们可以把这些JS里面的内容提取出来,然后放在一个js文件里面,以后只要下载一个js文件就可以了,可以减少服务器请求次数,从而提高加载速度!不过注意要把JS里的路径根据自己的情况稍作修改。

 另外就是文章加载到点击次数那里卡住了,有时差不多要几秒钟,感觉很不好,因为这里是在查询文章的点击次数,影响了速度。这里我们可以用AJAX方式优化一下,具体做法如下:
修改模板把下面的这段代码:
<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 id="article_click"></span>
然后在前面所说的统一的JS文件里加入一个JS函数引用内容如下:
function getClick(aid,mid){
var taget_obj = document.getElementById('article_click');
myajax = new DedeAjax(taget_obj,false,false,'','','');
myajax.SendGet2("/plus/count.php?ajax=yes&mid=" +mid +"&aid=" +aid);
DedeXHTTP = null;
}
最后修改plus/count.php文件,在exit()之前加入以下的代码:




if(!empty($ajax)){

    $row = $dsql->GetOne(" Select click From `{$maintable}` where {$idtype}='$aid' ");

    if(is_array($row)){

        echo $row['click'];

    }

}






然后把模板里面的




<script language="javascript" type="text/javascript">getDigg({dede:field.id/});</script>






改为:




<script language="javascript" type="text/javascript">getClick({dede:field name='id'/},mid={dede:field name='mid'/});getDigg({dede:field.id/});</script>






其实getClick这个函数我们只需要放在文章最后面,等文章全部加载完了之后再显示点击次数也没关系。经过这两步,你会发现文章的加载速度会快不少。



             

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多