WordPressサイトの表示速度改善は、SEOにもユーザー体験にも直結する重要な施策。GoogleのCore Web Vitalsがランキング要因になっている今、速度改善は避けて通れない。
実際に効果があった施策を、優先度順にまとめます。
まず何から始める?計測が最優先
改善の前に、現状の速度を把握する。
- PageSpeed Insights — Googleの速度計測ツール。Core Web Vitalsのスコアがわかる
- GTmetrix — 詳細なウォーターフォールチャートでボトルネックを特定
- Chrome DevTools — Network/Performanceタブで実測値を確認
計測せずに「なんとなく遅い」で改善を始めると、効果のない施策に時間をかけてしまう。
優先度1:画像の最適化
最も効果が大きい施策。WordPressサイトで表示が遅い原因の大半は画像。
EWWW Image Optimizer
アップロード時に画像を自動圧縮してくれるプラグイン。既存の画像も一括最適化できる。
- WebP変換にも対応
- 無料プランで十分な圧縮品質
適切なサイズでアップロード
横幅4000pxの画像を、表示領域が800pxのところに使っていないか確認。WordPress 5.3以降は2560px以上の画像を自動リサイズするが、それでもアップロード前にリサイズしておくのがベスト。
WebP / AVIF形式を使う
JPEGやPNGよりも軽量な次世代フォーマット。EWWW Image OptimizerやShortPixelで自動変換できる。
<picture>
<source srcset="image.avif" type="image/avif">
<source srcset="image.webp" type="image/webp">
<img src="image.jpg" alt="..." loading="lazy">
</picture>
loading=“lazy” の活用
WordPress 5.5以降、imgタグにloading="lazy"が自動付与される。ファーストビューの画像にはfetchpriority="high"を設定して優先読み込みする。
優先度2:キャッシュの設定
ブラウザキャッシュ
一度読み込んだCSS/JS/画像をブラウザに保存させる。.htaccessで設定。
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>
ページキャッシュ
PHPの処理結果をHTMLとしてキャッシュし、次回以降はPHPを実行せずにHTMLを返す。
おすすめプラグイン:
| プラグイン | 特徴 |
|---|---|
| WP Super Cache | シンプルで安定。設定が少ない |
| W3 Total Cache | 高機能だが設定が複雑 |
| LiteSpeed Cache | LiteSpeedサーバー利用時に最適 |
レンタルサーバー独自のキャッシュ機能(ConoHa WINGの「WEXAL」、エックスサーバーの「Xアクセラレータ」等)がある場合は、プラグインとの併用に注意。
優先度3:不要なプラグインの削除
使っていないプラグインを無効化・削除する。プラグインが多いほどCSS/JSの読み込みが増え、PHPの処理も重くなる。
確認ポイント:
- 有効化しているプラグインで、実際に使っていないものはないか
- 同じ機能のプラグインが重複していないか
- WordPress本体の機能で代替できるプラグインはないか
優先度4:CSS/JSの最適化
不要なCSS/JSを削減
使っていないCSSやJavaScriptが読み込まれていないか確認。Chrome DevToolsの「Coverage」タブで、使用率の低いファイルを特定できる。
レンダリングブロックの解消
<head>内のCSSやJSがページの表示をブロックしている場合がある。
- CSSは圧縮(minify)して、ファーストビューに必要な最小限のCSSをインライン化
- JSは
deferやasync属性をつけて非同期読み込み
優先度5:サーバー環境
PHPバージョンを最新にする
PHP 8.x系はPHP 7.x系と比べて大幅に高速化されている。レンタルサーバーの管理画面でPHPバージョンを確認し、最新の安定版に更新する。
サーバーのスペック
共有サーバーで他のサイトの影響を受けている場合は、リザーブドプランやVPSへの移行を検討。
CDNの導入
Cloudflare等のCDNを導入して、静的ファイルをエッジサーバーから配信する。Cloudflareは無料プランでも十分な効果がある。
優先度6:データベースの最適化
投稿のリビジョン、スパムコメント、一時的なオプションなどが溜まってデータベースが肥大化していることがある。
- リビジョンの保存数を制限(
wp-config.phpにdefine('WP_POST_REVISIONS', 5);) - 「WP-Optimize」プラグインでデータベースのクリーンアップ
実はやらなくていい施策は?
- Gzip圧縮 — ほとんどのレンタルサーバーでデフォルト有効
- Lazy Load プラグイン — WordPress 5.5以降で標準機能
- 過度なminify — 効果は小さいのに表示崩れのリスクがある
どの順番で改善すればいい?
- PageSpeed Insightsで現状のスコアを記録
- 上の優先度順に1つずつ施策を実施
- 施策ごとにスコアを再計測して効果を確認
- 効果がなかった施策は元に戻す
一気に全部やるのではなく、1つずつ効果を確認しながら進めるのが大事。複数の施策を同時にやると、何が効いたのかわからなくなる。
まとめ
| 優先度 | 施策 | 効果 |
|---|---|---|
| 1 | 画像最適化(WebP/AVIF、リサイズ、圧縮) | 大 |
| 2 | キャッシュ設定(ブラウザ+ページ) | 大 |
| 3 | 不要なプラグイン削除 | 中〜大 |
| 4 | CSS/JS最適化 | 中 |
| 5 | サーバー環境(PHP更新、CDN) | 中 |
| 6 | データベース最適化 | 小〜中 |
画像とキャッシュの2つだけでも、体感で明らかに速くなるはずです。