WordPressを高速化する方法

WordPressを高速化する方法

WordPressをシンプル且つ効率的に高速化する方法がありますよ!

手始めに、オブジェクトキャッシュ系(サーバ側で実装済みなら尚不要)以外のページ高速化プラグインを全て削除してください。
HTTPS系プラグインも不要です。(.htaccessで頑張れ)

最適化プラグインをたくさん入れるのは大間違い。

では順を追って作業を進めていきましょうΣd(ゝω・)

1.GZip圧縮を活用

以下を.htaccessのRewriteルールの上あたりに記述。

# phpのzlibロード圧縮を有効にする
php_flag zlib.output_compression on

# Proxyサーバがファイルのキャッシュをしない設定
<IfModule mod_headers.c>
Header append Vary User-Agent env=!dont-vary
</IfModule>

# GZip圧縮化
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ico)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI _\.utxt$ no-gzip
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
</IfModule>

2.mod_expiresを使ったブラウザキャッシュでファイル読み込みの高速化

以下を.htaccessのGzip圧縮設定直下に記述。

# WebフォントをWeb上で読めるようにする
AddType application/vnd.ms-fontobject .eot
AddType application/x-font-ttf .ttf
AddType application/x-font-opentype .otf
AddType application/x-font-woff .woff
AddType image/svg+xml .svg

# 各ファイルのブラウサキャッシュ有効化
<ifModule mod_expires.c>
	ExpiresActive On
	#ExpiresDefault "access plus 1 seconds"
	#ExpiresByType text/html "access plus 1 seconds"
	ExpiresByType text/css "access plus 1 days"
	ExpiresByType text/javascript "access plus 1 weeks"
	ExpiresByType image/gif "access plus 1 weeks"
	ExpiresByType image/jpeg "access plus 1 weeks"
	ExpiresByType image/png "access plus 1 weeks"
	ExpiresByType image/x-icon "access plus 1 weeks"
	ExpiresByType application/pdf "access plus 1 weeks"
	ExpiresByType application/javascript "access plus 1 weeks"
	ExpiresByType application/x-javascript "access plus 1 weeks"
	ExpiresByType application/x-shockwave-flash "access plus 216000 seconds"
	ExpiresByType video/ogg "access plus 1 month"
	ExpiresByType video/mp4 "access plus 1 month"
	ExpiresByType video/webm "access plus 1 month"
	ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
	ExpiresByType application/x-font-ttf "access plus 1 year"
	ExpiresByType application/x-font-opentype "access plus 1 year"
	ExpiresByType application/x-font-woff "access plus 1 year"
	ExpiresByType image/svg+xml "access plus 1 year"
</ifModule>

3.たったひとつのWordPressプラグインで一発カンタン!HTMLソースの短縮化

1.WP管理画面→プラグイン→新規追加から、Autoptimizeをインストールし最適化

2.設定→高度な設定に切り替える

3.HTMLコードを最適化→ON
JavaScriptコードの最適化→ON
インラインのJSを連結→ON
CSSコードを最適化→ON
データを生成:画像をURI化→ON
Googleフォントの削除 →ON
インラインのCSSを連結→ON

4.WP管理画面→プラグイン→新規追加→WP-Optimizeをインストールし最適化→定期的にDBのゴミを取り除く

4.画像をまとめて最適化

1.WP管理画面→プラグイン→新規追加→EWWW Image Optimizerをインストール→有効

2.すべての画像をロスレス圧縮

5.AMP

そもそもAMPって何?
→Googleが提唱している、モバイルページを高速に表示させるための手法で、これが適用されているとGoogleでの検索結果がグンと上がります。
テーマによってはGoogleSearchConsoleに怒られてしまう可能性がありますので、その場合は適宜プラグインを検索したりテーマを見直してみましょう。

6.オブジェクトキャッシュのススメ

・phpのバージョンを7.0以上にする
・サーバがphp5.6以上なら、OPCacheを導入。phpの中間コードを物理メモリにキャッシュしてくれるので速くなりますよ!
・デフォルトのセッションエンジンをmemcachedに切り替える
・MySQL(MariaDB)のチューニング
・可能であれば、WebサーバをHTTP/2に対応させる(要SSLキー、Let’s Encryptとか)