【プログラム】WordPressにAdSenseの広告貼ったら javascript のエラーが仰山でる(初心者~中級者)

SEO対策SEO
Photo by Merakist on Unsplash

Javasfriptエラー対処方法を Sagasoon.

Javascriptを仕込んだら、エラーが・・・

Adsenseでエラーがはかれる

いざ Google AdSenseで広告を出してみようと Javbascript 仕込んだとたん、
サイトが重くなるは、エラーは出まくりだわ。。。

そんな方も多いのではないかなと思います。
例えば、

adsbygoogle.push() error: No slot size for availableWidth=0

今日は、これを解決しときましょう。

この対策を実施してもエラーが出る場合があるようなので、「一案」としてご理解ください。

解決案

エラーになる方は、下記の2つに該当しますか?

  • PC版のサイトはエラーが出ず、スマフォ版がでる
  • レスポンシブデザインのサイトである

そんな方であれば、ずばり、これを試してみてください。

  • プラグインWidget Logicをインストール
  • PC版とモバイル版で振り分けられるウィジェットすべてに表示設定を行う

この2つの手順を実施してみたら、もしかするとエラー無くなります!

詳しい手順をご提示する前に、まずは、「どうしてこの対処が必要か?」をご説明しておきます。
※面倒な方は、その下にある「対処法」からどうぞ♪

html上にある表示されないhtmlが原因

今回紹介する「対処案」は、「html上に記載されているが、実際には表示対象になっていないタグ」を消すという方法をとってます。

レスポンシブウェブデザインは、そもそもhtmlを切り替えずにパソコン版とモバイル版のページを出せるようにするというのがコンセプト。
パソコン版とモバイル版で共通のものを使えればいいんですが、やはり、どうしてもパソコン版とモバイル版で少し「差」が出てくるわけです。
この「差」というのが、たとえば、パソコン版でいうサイドバーなど。モバイル版ですと表示されてなかったりしますよね。

さて、この「差」というのはhtmlの中でどうしているかというと、たとえばサイドバーであれば、モバイル版を表示する際「消す」という処理をします。display:none とか css を打って、画面に出ない状態にするわけです。

html上には入っているんだけど、こういったように「消す」という行為で、画面に出さなくしているだけということです。

さて、今回対処するエラーは、

adsbygoogle.push() error: No slot size for availableWidth=0

ですね。
これは、この「消されたタグ」で起きてるエラーの場合があるということです。
実際には html の中の要素としてあるんですが、表示対象になっていないので、javascriptでエラーになってるという感じです。

対処法

プラグインWidget Logicをインストール

WordPressの公式サイトから、Widget Logicをインストールし、有効化にします。

Widget Logic
Widget Logic lets you control on which pages widgets appear using WP's conditional tags.

インストールが終わった後、「外観」の「ウィジェット」から、サイドバーにある広告のウィジェットを開いてみてください。
「ウィジェットのロジック:」という欄がありますよね。
この欄に「パソコン版の場合」とか「モバイル版の場合」などの条件が入れられるわけです。
条件に従って、 html を作ってくれるわけなので、先ほど紹介した

「モバイル版の場合はデスクトップ版のサイドバーを見えなくする」

なんてこが不要になるわけです。
つまりは、エラーがなくなりますよと。

では、下記の条件に従って、「ウィジェットのロジック:」の欄にこんなマジックワードを入れてください。

!wp_is_mobile()
デスクトップ版にしか表示されないウィジェットの条件の欄にこれを入れます。
wp_is_mobile()
モバイル版にしか表示されないウィジェットの条件の欄にこれを入れます。

wp_is_mobile() とかを入れてください。文頭にビックリマークとか書いてありますが、これも大事なのでここも含めて入れてください。

こうするることで、デスクトップ版にしか出力されないウィジェットとか、そうゆう具合になります。

まとめ

いかがだったでしょうか?
私の場合、サイドバーなどには、広告意外のウィジェットにも全部上記 wp_is_mobile などの情報を入れ込みます。
そうすることで、モバイルとデスクトップのhtmlが異なってしまいますが、エラーは確実に減りますし、Googleのスコア評価もよくなりますしね。

それではまた!

炭酸野郎

今日も何かを Sagasoonを運用してます。炭酸野郎です。
皆さんの「何か」が探せるべく、記事書いてます。
新卒で中堅SIerに就職→10年ちょいで退職→フリーランス→起業。副業としてのブログに目覚める(今ここ)。
時間作って、色々なことがやりたいお年頃です!

炭酸野郎をフォローする
SEOProgramingCMSwordpressIT
炭酸野郎をフォローする
SAGASOON

コメント

タイトルとURLをコピーしました