WordPress減肥記:壓縮JavaScript檔的大小
最近幾個月虛擬主機的流量一直破表,2009年11日時使用量91%時,趕緊把放在網站裡的圖檔都改到外部網站,好不容易讓流量降到72%,沒想到最近幾個月都超出每個月30GB的流量限制。因為智邦是採用超量自動扣除可用天數的作法,因此沒有無法連線的壓力,拖到今天開始著手減肥,首先列出佔用頻寬的「大用戶」出來。
▼最近幾個月的流量統計
我由網頁紀錄分析列出昨天的要求(網頁Request)報表,發覺WordPress使用的幾個JavaScript檔吃掉不少流量:/wp-includes/js/jquery/jquery.jsp佔了傳輸量的16%,/wp-includes/js/prototype.js則佔了約12%。好像從WordPress 2.8開始,WordPress就使用了這幾個常見的JavaScript Framework,如果把這些.js檔拿掉的話,又會造成系統運作異常(例如刪掉prototype.js的話,後台的Widgets設定就會完全無法操作),更糟的是像prototype.js使用的是完整的原始檔,一個檔就是125K!
▼網頁要求統計報表
減肥的第一步是把prototype.js壓縮變小,由這裡下載YUI Compressor來壓縮,由125K降成71K,把縮小後的prototype.min.js複製回WordPress的wp-includes/js資料夾,檔名仍為prototype.js:
cd build rem copy prototype.js to yuicompressor-2.4.2/build java -jar yuicompressor-2.4.2.jar prototype.js > prototype.min.js rem copy prototype.min.js YOUR_WORDPRESS\wp-includes\js\prototype.js
接著再把WordPress使用的內建jquery.js檔換成Google CDN的檔案:
- 編輯wp-includes/scripts-loader.php
- 修改jquery.js檔案:
//$scripts->add( 'jquery', '/wp-includes/js/jquery/jquery.js', false, '1.3.2'); $scripts->add( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js', false, '1.3.2');
- 將修改儲存起來並更新回虛擬主機
先修改這兩個,觀察明天的流量,希望流量會降低些。
##
您可能也會有興趣的類似文章
- WordPress 3.0與PHP 5的時區問題 (1則留言, 2010/06/24)
- 用cPanel Proxy穿透防火牆以操作網站cPanel後台 (0則留言, 2010/06/21)
- 新網站發文出現HTTP 406錯誤… (0則留言, 2010/07/06)
- 網站又搬家了;落腳ACSite.NET (18則留言, 2010/06/20)
- JavaScript Collector: 包羅萬象的JavaScript檔案庫 (0則留言, 2007/03/20)
- [jQuery元件] Fancybox 3使用備忘 (0則留言, 2018/08/26)
- Step by Step安裝WordPress 3.0與啟用 Multi-Site多站點功能 (20則留言, 2010/07/10)
- 修改WordPress 2.8最新迴響的顯示格式 (0則留言, 2009/06/17)
- 自動產生文章目錄的WordPress外掛:jQuery Table of Contents (2則留言, 2010/06/13)
- 自製WordPress-mu 2.7的繁體中文語言檔[修訂] (10則留言, 2009/02/09)
- 佈景主題Atahualpa 3.5.2增加WordPress 3.0選單功能 (1則留言, 2010/07/21)
- 用JavaScript寫的迷宮遊戲 (0則留言, 2005/05/25)
- 用jQuery改造WordPress網頁 (2則留言, 2009/10/27)
- 目前使用中的WordPress外掛 (3則留言, 2008/11/29)
- WordPress跑馬燈外掛:Running Line (1則留言, 2010/06/10)
哎 和我的一样 整天想着如何把大文件转移出去。你这边的jquery.js 完全可以改成引用外部网站的jquery.js.
prototype.js暂时还没找到哪调用的。所以今天上网搜 搜到了你的网站。哎。同是天涯沦落人啊。
我网站里的图片啊 css,js文件 swf文件全部引用的外部网站的。
我覺得外掛的影響也很重大,因此逐步把非必要的外掛都停用了。
謝謝分享!!
不過在弟的 WP3.0 修改用GOOGLE 的 JQUERY 後..
發現原 WP PANEL / POST TAGS 會出現無法使用的狀況!!
以上..
WordPress 3好像使用jQuery 1.4.2了? 文中範例使用的是1.3.2,改成1.4.2應該是OK的。本網站就是WordPress 3,一切正常哩。
ㄟ… 這版號我也有改哩.. ><
莫非是其它的 PLUGIN 沖到了..
回家再試試好了.. 謝謝!!
@m.m.: 我又測試了一次,原先網站裡的jquery.js傳輸量是27K,改用Google的jquery.min.js後,傳輸量變成24K,雖然只有區區3K,不過也是積少成多。