サイト表示を少しでも早く!WordPressでJavascriptファイルを非同期にする方法
特にサイトを作ったことのある人であれば、Googleの「PageSpeed Insights」で 、サイトの表示スピードを点検することも多いと思います。

その「PageSpeed Insights」では、改善案を提案してくれるんですが、その改善提案の中に「スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する」というのがあります。

もしサイトをWordPressで構築している場合は、functions.php の中に、以下のコードをコピペして入れれば完了です。
そのやり方は以下のとおりです。
if (!(is_admin() )) {
function add_async_to_enqueue_script( $url ) {
if ( FALSE === strpos( $url, '.js' ) ) return $url;
if ( strpos( $url, 'jquery.min.js' ) ) return $url;
if ( strpos( $url, '非同期で読み込むと動作しなくなるファイルをここに入れる' ) ) return $url;
return "$url' async charset='UTF-8";
}
add_filter( 'clean_url', 'add_async_to_enqueue_script', 11, 1 );
}上記のコードを入れると、読み込んでいるJavascriptファイルに、async が下記のように入ります。
<script type='text/javascript' src='https://●●●●.com/wp/wp-content/themes/●●●/js/●●●●●.js' async charset='UTF-8'></script>
4、5行目は、非同期にすると作動しない場合もあるので、非同期にしたくないファイル名を、書き込んでおきます。
もし、「PageSpeed Insights」で、「スクロールせずに見えるコンテンツのレンダリングをブロックしている JavaScript/CSS を排除する」の提案があった際には、導入してみてもいいんじゃないでしょうか。





コメント