【脱CDN】Font Awesomeをローカルにダウンロードして読み込む方法
メリット
- CDNを利用しないので、リクエストが減りサイトの速度を改善できる
- PageSpeed Insightsでの「ウェブフォント読み込み中のテキストの表示」を解消できる
今回はWordPressを例として、実際にFont Awesomeをローカルにダウンロードして読み込んでいきます。
読み込み方法
1. ローカルにダウンロード
まずFont Awesomeのダウンロードページにアクセスします。
右下にある「Download Font Awesome Free for the Web」をクリックしてダウンロードします。
2. ファイルの整理
まずファイルを解凍します。
今回アップロードするのはその中のcss
とwebfonts
という2つのディレクトリです。
アップロードする前にまずcss
ディレクトリの中のall.min.css
以外を削除します。
css
とwebfonts
、2つのディレクトリをFTPソフトなどを使ってアップロードします。子テーマ直下に置くのがおすすめです。
少しわかりにくい場合は、ファイルの階層を示した上記図を参考にしてみてください。
この通りの構成にしないとFont Awesomeが上手く読み込めないなのでご注意を。
3. all.min.cssを読み込む
あとは上のように、先ほど設置したall.min.css
をhead
タグ内で読み込みます。
もし子テーマ直下に設置したのならこれでOK。これでFont Awesomeを読み込めたはずです。
余談ではありますが、当サイトのようにSANGOをテーマとして使われている方はsango-theme/library/functions/sng-style-scripts.php
を上記のように修正してあげても読み込めます。
4. 「font-display:swap」を追加する
ここからは必須ではありません。PageSpeed Insightsでの「ウェブフォント読み込み中のテキストの表示」を解消したい場合です。
all.min.css
に上記のように追記。font-display
プロパティの値をblock
からswap
に変更します。
これで「ウェブフォント読み込み中のテキストの表示」は解消されるはずです。
実はこの問題はCDNで読み込んでいた場合でも解消することができました。しかしそれは一部のテーマのみの話で、その他のテーマでは親テーマのCSSにfont-display:swap
を記述しても上書きできなかったのです。
しかし今回のようにローカルで読み込む方法の場合テーマ問わず解消できるので、それも1つの大きなメリットですね。
5. 「キーリクエストのプリロード」の解決
この方法でFont Awesomeを読み込めたはいいものの、PageSpeed Insightsで「キーリクエストのプリロード」と指摘される場合の解決法です。
まずPageSpeed Insightsで指摘されるURLをコピーします。(今回追加したwebfont
ディレクトリの中のフォントファイルを指しています)
そしてそのコピーしたURLの数だけ、上記コードをhead
タグ内に追記してあげればOK。ちなみにこれはpreload
を指定し、フォントを先読みしています。
これで「キーリクエストのプリロード」は解消されたはずです。
下記記事では、このほかにも実践できるWordPress高速化のカスタマイズをまとめています。ぜひ参考にしてください。