【無料】はてなブログからWordPressへの移行サービスはじめました!

EWWW Image OptimizerでWebPを利用してWordPressを高速化

WordPressを高速化する方法はいくつもありますが、ネックになるのはだいたい画像ファイルです。

画像を圧縮したりリサイズしたりと軽くする方法は様々ですが、今回はWordPressの画像を次世代フォーマットに対応させる方法を紹介します。

PageSpeed Insightsの改善できる項目

PageSpeed Insightsで測定すると改善できる項目には

次世代フォーマットでの画像の配信」が大体1位になると思います。

次世代フォーマットとは
次世代フォーマットとはJPEG 2000、JPEG XR、WebP などの画像フォーマットは、PNG や JPEG より圧縮性能が高く、ダウンロード時間やデータ使用量を抑えることができます

JPEGやPNG以外の圧縮率が高い画像フォーマットのことです。

どのフォーマットもそれぞれ特徴がありますが、今回おすすめするのはWebPです。

なぜかと言うと、あの天下のGoogleが開発しているフォーマットだからです!

ちなみにファイルの拡張子は「.webp」になります。

様々なサイトで圧縮の劣化の具合などを評価されているので割愛しますが、ほぼ劣化なくサイズを高効率で圧縮できます。

EWWW Image Optimizerを使ってWebPに変換する

まずはEWWW Image Optimizerをインストールします。すでにインストール済の人は飛ばしてください。

EWWW Image Optimizerの設定画面から「WebP」タブをクリックします。

そして「JPG,PNGからWebPにチェック」を入れて、変更を保存します。

すると、下の方にこのような記述が表示されます。また右下の方にPNGと赤色で表示されています。

.htacsses
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_ACCEPT} image/webp
RewriteCond %{REQUEST_FILENAME} (.*)\.(jpe?g|png)$
RewriteCond %{REQUEST_FILENAME}\.webp -f
RewriteCond %{QUERY_STRING} !type=original
RewriteRule (.+)\.(jpe?g|png)$ %{REQUEST_FILENAME}.webp [T=image/webp,E=accept:1,L]
</IfModule>
<IfModule mod_headers.c>
Header append Vary Accept env=REDIRECT_accept
</IfModule>
AddType image/webp .webp

上の記述内容を.htaccessファイルに追記します。

追記する内容についてわかりやすく言いうと、ブラウザがWebPに対応しているなら画像ファイルをWebPで配信して、非対応なら元のフォーマット(JPEGやPNG)で配信するという内容です。

注意
「リライトルールを挿入する」をクリックすると自動で.htaccessファイルに追記されますが、バグやトラブルを避けるために手動で追記することを勧めします。

.htaccessファイルに追記する

これはレンタルサーバーや人によってやり方が異なります。

注意
.htaccessファイルを不用意にいじるとサイトが表示されなくなるなどの不具合が発生するため、必ずバックアップを取って作業を行ってください。

FTPクライアントを使用する場合

一般的な方法はFTPクライアントソフトを利用して.htaccessファイルをダウンロードして編集してアップロードする方法です。

FileZillaFileZillaを使ってSSH(SFTP)接続で安全にファイル転送する方法

エックスサーバーの場合

エックスサーバーの場合は、WEBブラウザから変更が可能です。

エックスサーバーの管理画面にログイン後

「ホームページ」ー「.htaccess編集」から対象ドメインを選択して変更可能です。

ConoHa WINGの場合

ConoHa WINGの場合もWEBブラウザから変更が可能です。

管理画面にログイン後、対象ドメインを選択して

「サイト管理」ー「サイト設定」ー「応用設定」ー「.htaccess設定」から変更可能です。

WebPファイルに変換する

WebPファイルを生成するためにWordPress管理画面から

「メディア」ー「一括最適化」ー「最適化されていない画像をスキャン」

スキャン後に一括最適化を行います。

WebPで配信されているかの確認方法

画像ファイルがWebPで配信されているかを確認する方法はいくつか方法があります。

EWWW Image Optimizerの設定画面の右下がWEBPと緑色に表示されていてばOKです。

Google Chromeの検証ツールでも確認できます。

サイト上で右クリックから「検証」をクリックします。

Network」タブでFilterを「Img」を選択し、サイトを読み込ませて画像のファイルがwebpとなっていればwebp画像が配信されています。

ブラウザキャッシュを使用している場合はWebPも追記する

別途個別にブラウザキャッシュの設定を行っている場合はWebP用のキャッシュ設定も追記する

.htaccess ブラウザキャッシュ追記
  ExpiresByType image/webp "access plus 1 weeks"

これでwebpのブラウザキャッシュも1週間有効になります。

まとめ

スコア低下の要因と対策
  1. 画像ファイル:画像ファイルを圧縮、次世代フォーマットの利用
  2. 外部ファイル:広告を貼りすぎない
  3. 解析ダグ:アクセス解析タグを貼りすぎない
  4. 遅延読み込み:Lazy Loadのプラグインを使う
  5. コードの肥大化:Autoptimize などで圧縮する
  6. ブラウザキャッシュの利用:.htaccessでブラウザキャッシュを有効化
  7. サーバーの処理能力不足:高速なサーバーを利用する

これは私の他のサイトの測定結果ですが、モバイルでも92までスコアがありました。

しかし、100点を叩き出してもただの自己満足に過ぎないので、平均の50~89点を目指して頑張ってみてください(^^)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です