Wordpress的功能非常強大,諸多的插件、花哨的界面,使得它的讀取速度也大大降低。因此,如何優化以加快訪問者的瀏覽速度便成了wper們思考的問題。我將諸多高手的方法整理總結了一下,匯成此文,希望能對大家有所幫助。 (建議將WP系統更新至2.1.2 以上)
圖片其實是影響網頁讀取速度的關鍵,稍大一些的圖片就可能達到100K;因此,在上傳自己的圖片之前,務必用Photoshop的"保存至網頁"(save for web)功能,對圖片進行優化。(例如,保存成GIF, PNG格式等等)
在安裝插件之前,首先問一下自己,你是否必須要此插件。不要安裝UTW之類的超大插件,盡可能的降低插件數量。
讓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');
合并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代碼最好放在文件最后。