WordPress 網站加速、效能優化全攻略(三):佈景主題與外掛優化

佈景主題與外掛優化

這篇文章是 〈Wordpress 網站加速、效能優化全攻略〉 系列的第三篇,如果你還沒有看過前兩篇的話,建議從 〈 頁面大小與內容最佳化 〉 以及 〈 我的網站算慢嗎?〉 開始閱讀,會比較容易進行。

佈景主題和外掛說穿了就是一行一行的程式碼,通常佔用最多資源的也是這兩個,所以只要針對這兩個項目正確優化,通常就可以提高相當的速度。

 


選擇可靠的主題供應商

如果你不是在 WordPress 的網站直接下載或是購買付費主題的話,最好找一個可靠、並且最好是在 WordPress 社群已經小有名氣主題供應商。花點時間挑選一個好的主題,可以讓你之後少花好幾天的時間維護、修改、調校效能。在選擇佈景主題之前,可以看看底下的用戶評論, 如果是在 Themeforest 購買的話,通常一個好的主題不會低於 4 分

不要選擇那些已經很久沒有更新的主題,因為 WordPress 是一個不斷在更新的程式,太久沒有 update 的主題通常會出問題。主題的撰寫方式也對網站的品質影響很大,因為原始碼的質量會影響你網站的每一個部分。例如,某些主題會有「相關文章」這樣的功能,這種功能當然很好,但是往往會造成對 MySQL 資料庫的查詢過多,而導致網站整體讀取速度變慢(這邊要強調一下,也不是所有的相關文章外掛都不能用)。總之,就算你不是一個好的開發者,一樣也可以有好的網站,但要確保你選擇的是一個完善的佈景主題。


不要用過大的佈景主題

在找尋可用的佈景主題時,你一定可以看到那些聲稱它們可以用於幾乎任何類型的網站的主題。他們的確會具備很多功能,例如 Slider、相片輪播、社群外掛、購物車、論壇… 等,這些功能都需要 Javascript 和 CSS 資源的運作,如果你其實不會使用到這麼多功能,你只是在浪費網站的資源。這些功能不應該是你的主題的一部分,如果你還是想要使用這樣的主題,最好選擇可以移除這些功能的。如果真的需要這些功能的時候,再安裝相對的外掛就可以了。所以,選主題,不要選功能。


如果需要修改,最好使用子主題(Child Theme)

選擇 WordPress 的好處之一就是會常常更新,其中不乏包括性能的優化。主題是相對比較難更新的部分,但是一個好的主題經常發布新版本與眾多的更新。使用子主題可以讓你保持父主題了最新的,同時保持所有的自定義完好。設置一個子主題不是困難的事,只要按照 WordPress.org 上的說明進行操作就可以。但是如果是英文苦手的話,可以等我一下,我接下來的內容也會針對這些項目更新。


針對手機的效能進行優化

這個應該不用再次強調了,每年都有越來越多的流量來自移動設備。平板電腦和智能手機正在成為甚至比瀏覽標準的台式電腦更受歡迎。這就是為什麼,確保網站在手機或是其它移動設備上盡可能地快是很重要的。

通常情況下,用戶使用手機瀏覽時,他們用的應該是 3G 或 4G 網路,這樣的網路品質通常不會比家裡的 WiFi 來的快。所以最好的方法是針對這些手機端的用戶,進行頁面內容的調整,而不是做一個響應式的版本。下面是優化你的手機版網站的幾個步驟:

1. 測試與谷歌移動設備的測試頁面,這將給你的信息,如果你的頁面的某一部分沒有很好地針對移動設備優化。
2. 選擇一個針對手機版優化的主題。在測試你的網站時,要記得同時測試移動版本。
3. 如果你的主題沒有一個移動版本,可以考慮使用插件,比如 WP Touch,將產生你的網頁的移動版本。然而,有一個本地移動版本始終是最好。


不要裝一堆功能重複的外掛

如果一個外掛包括多個功能,確保你幾乎都會用到再安裝。如果你已經有類似功能的外掛,就不需要再另外裝功能重複的了。

例如,如果你使用的是 Yoast SEO 外掛,你想要生成一個 Google XML 網站地圖,只要用這個外掛內建的功能就可以,而不是再安裝另外一個外掛來實現這個功能,除了讓 WordPress 的資源浪費之外,外掛之間也有可能會相互衝突,造成網站無法預期的故障。


隨時更新外掛

大多數的外掛都會不定期的更新,通常更新都會改善效能、相容性、安全性等問題。經常保持你的外掛更新,你會得到從最新發布的所有性能改進。

除了將外掛在最新狀態之外,如果可能的話,也可以用較新的 PHP 版本,像是 PHP7。這將會大幅度的提升你的網站效能。

如果有不再使用的外掛,記得要刪除。


徹底移除外掛

對,有些外掛用預設的方法刪不乾淨。如果想要解決這個問題,可以使用一個叫做 Garbage Collector 的外掛。

大部分的外掛在你刪除的時候,是不會幫你清理資料庫的。他們雖然已經把檔案刪掉,但是他們在資料庫創建的資料表,通常依然會存在。這個插件將檢查所有通過任何插件使用的選項,並允許您將其刪除。儘管這是一個相對安全的操作,我建議你的數據庫刪除任何數據之前備份。


最後一步:調整伺服器或是代管商設定

http://dsgn.tw/wordpress-server-hosting-optimizations/