国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > WordPress > WP终极优化手册:有效优化你的Wordpress博客

WP终极优化手册:有效优化你的Wordpress博客

来源:程序员人生   发布时间:2014-03-29 20:52:07 阅读次数:2979次

  Wordpress的功能非常强大,诸多的插件、花哨的界面,使得它的读取速度也大大降低。因此,如何优化以加快访问者的浏览速度便成了wper们思考的问题。我将诸多高手的方法整理总结了一下,汇成此文,希望能对大家有所帮助。 (建议将WP系统更新至2.1.2 以上)

  1. 优化所有的图片(images):

    图片其实是影响网页读取速度的关键,稍大一些的图片就可能达到100K;因此,在上传自己的图片之前,务必用Photoshop的"保存至网页"(save for web)功能,对图片进行优化。(例如,保存成GIF, PNG格式等等)

  2. 关闭一切不必要的插件(plugins):

    在安装插件之前,首先问一下自己,你是否必须要此插件。不要安装UTW之类的超大插件,尽可能的降低插件数量。

  3. 开启WP自带的缓存(Cache)功能:
    1. 打开WP根目录下的wp-config.php文件,在最后一行之前添加 define('ENABLE_CACHE',true);
    2. 将WP-content目录下的cache目录属性改为777,以保证系统能够写入cache。
    3. 如果您的blog日访问量在200以上,建议安装WP-Cache插件,否则不推荐使用。
    4. 让WP-Cache也用上Gzip:如果你安装了WP-Cache,一定知道WP-Cache要求必须关闭WP的内置GZip功能,但是我们可以在wp-cache-phase1.php中添加代码来实现Gzip压缩功能。

      打开wp-cache-phase1.php,大概在35行左右找到如下代码:

      foreach ($meta->headers as $header) {

      header($header);

      在此代码前添加下面的代码:

      if ( extension_loaded('zlib') ) ob_start('ob_gzhandler');

  1. 合并JS和CSS文件:不少插件都有自己的JS文件,系统在读取这些文件时候会产生大量的http requests,产生的延迟约为0.2秒/个。因此将所有的JS和CSS文件合并,会大大加快页面的读取速度。这里我采用的是阅微堂的手动合并的方法。

    手动合并是一个方法,但是容易弄错,而且不太好修改。另一个方法是建立一个新的all.js.php文件,内容是:

    <?php

    require_once('目录/wp-blog-header.php' ) ;

    include ("/blog/a.js" ) ;

    include ("/b.js" ) ;

    ?>

    就是将header.php里面的那些js文件都include到all.js.php,然后在header里面包含all.js.php文件即可:

    <script xsrc="all.js.php" type="text/javascript" />

    另外还要做的一件事情是需要把原来那些js文件从head里面去掉。通常这些js文件都是通过

    add_action('wp_head','fun' );

    这样的钩子添加到head里面的。在fun函数的定义处去掉对应的代码,或者直接把这条语句删除即可。

    对CSS文件也可以用同样的处理方式。CSS文件一般都不多,这时候可以直接手动把它们都贴到一起。

    另外js文件的载入位置也很重要,放在越后面越好,让浏览器先下载html代码。像Google Analytics的js代码最好放在文件最后。

  2. 压缩代码:
    1. 在管理界面的 Options->Reading选项中,开启WP自带的压缩功能(WordPress should compress articles (gzip) if browsers ask for them)
    2. 利用CSS Tweak压缩CSS代码,注意。为了方便自己编辑,最好保留一份未经过压缩的代码。
    3. 利用Shrinksafe 压缩JS代码,同样的,最好保留未经过压缩的JS代码,以便将来更改时候便于阅读。
      生活不易,码农辛苦
      如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
      程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生