织梦DEDECMS加速文章页显示速度的两个小方法

2017-04-13 14:28:44 dedecms

因为用是国外的空间,网络比不上国内的空间,所以只能在系统上动手脚了。我在默认的模板上小改了一下,速度快了不少,不敢独享,发表出来,大家参考下。

第一步

处理文章页的Javascript,在默认模板中前面有一大段Javascript,可能有2KB多一点,每个页2KG,集少成多也不少了。我就把这段JS提取出来,另存为一个文件,以后只要下载一次就可以了。不过注意要把JS里的路径根据自己的情况替换一下。

第二步

发现文章到点击次数那里卡住了,有时差不要十来秒,感觉很不好,原来在查数据,影响了速度。其实这里我们可以用AJAX方式写出来,具体做法是:

1、修改模板把<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>

2、在第一步所说的的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;

}

3、修改plus/count.php文件,在exit()之前加入以下的代码

if(!emptyempty($ajax))

{

    $row = $dsql->GetOne(" SELECT click FROM `{$maintable}` WHERE {$idtype}='$aid' ");

    if(is_array($row))

    {

        echo $row['click'];

    }

}

4、把<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这个函数只要放在文章后面,哪里都无所谓。

技巧方面暂时就这两点,经过这两步后,感觉显示速度快了不少。