まだ作ったばかりで中身スッカスカです

adsbygoogle.jsが勝手に読み込まれる(Cocoon)

勝手に読み込まれる

Q
Cocoonでadsbygoogle.jsが勝手に読み込まれて止まらんとです。
A

adsbygoogle.jsはGoogleアドセンス広告を表示するためのJSです。

Cocoonではこれがデフォで読み込まれるようになっています。
しかも仕様により広告を掲載していなくても常に読み込まれます。

アドセンス広告は重いので止めればサイトの高速化が期待出来ます。
広告の遅延表示などをする場合も無効化する必要があります。

デフォで読み込まれる

PageSpeed Insightsで悩まされるのがadsbygoogle.jsです。これに足を引っ張られてサイトスピードが上がりません。調べてみたらCocoonはデフォでadsbygoogle.jsを読み込む事が分かりました。Cocoonの管理画面から広告設定を出来るようにするためのようです。

アドセンス広告を使用しなくても常に読み込むようになってます。なので無効化するとサイトの高速化が期待出来ます。広告表示の遅延やJSの重複読み込みをやめて高速化したい時も必要です。無効化しないとバックグラウンドで動き続け高速化のための施策が無意味になります。

手動で止める方法

footer-javascript.phpの内容を手動で書き換えます。Cocoon親テーマのtmpフォルダにあるfooter-javascript.phpを子テーマにコピーします。親テーマのフォルダ構成と同じようにtmpフォルダを作りコピーします。フォルダとファイルのパーミッション変更も忘れずに。

親テーマ:public_html/wp-content/themes/cocoon-master/tmp/footer-javascript.php
子テーマ:public_html/wp-content/themes/cocoon-child-master/tmp/footer-javascript.php

子テーマにコピーしたfooter-javascript.phpを編集します。赤字の部分を//でコメントアウトします。これでadsbygoogle.jsが勝手に読み込まれなくなります。

  <?php //AdSense非同期スクリプトを出力

  //広告の存在を確認するグローバル変数
  global $_IS_ADSENSE_EXIST;

  //アドセンス共通スクリプトコード
  define('ADSENSE_SCRIPT_CODE', '<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client='.get_adsense_data_ad_client().'" crossorigin="anonymous"></script>');
  //if ($_IS_ADSENSE_EXIST && !is_customize_preview() && !is_cocoon_settings_preview()) {
  if (is_ads_visible() && $_IS_ADSENSE_EXIST && !is_customize_preview()) {
  //  echo ADSENSE_SCRIPT_CODE;
  } //AdSense非同期スクリプトを出力
  ?>

効果のほどは…

実は子テーマのfooter-javascript.phpを不要なファイルと勘違いして削除したらサイトが激重になりまして。それで本件の問題を思い出しました。AdSense広告の記事で少し触れてますが、もっと分かりやすいように独立した記事にしました。

K部長
K部長

すでに記事にしたと思ってましたが、調べても見つかりませんでした。

Cocoonは標準でadsbygoogle.jsを読み込むので、そのせいで高速化を施しても効果を得られず困ってる人もいるのではないかと思います。もしまだ何もしてなければバックグラウンドでの動作を止めてみる事をオススメします。

再度PageSpeed Insightsでチェックしてみましたが、モバイルで55→75になりました。しかし測定のたび結果が変わるのでしばらく様子を見てみないと分かりません。速度が上がればSEOも改善すると思います。

参考

送信中です

×

※コメントは最大500文字、5回まで送信できます

送信中です送信しました!