【解決済】WordPressのカスタムHTMLにGoogle Adsenseコードを貼ったら保存できなかった話

WordpressのカスタムHTMLが保存できなかった問題

WordPressのカスタムHTMLが保存されない

本ブログではGoogle Adsense広告を表示しています。
WordPressのウィジェットからカスタムHTMLを任意の箇所に置き、Google Adsenseのコードを貼りつけています。

今はうまく表示できていますが、実は最初カスタムHTMLにGoogle Adsenseのコードを貼りつけて保存しようとした時、ずっと保存中の表記だけが出て、設定が反映されませんでした。

こんな感じです。
WordPressのカスタムHTMLが保存できなかった問題_実際の管理画面

原因はGoogle Adsenseの広告コード内にあるscriptタグが、WordPressのシステムかプラグイン、あるいはサーバーの設定に弾かれているからだと思われます。

なんとかならないかと調べてみたら、解決方法が見つかり、無事に解決できました。
今回はその解決法をご紹介します。

解決方法:サーバーのWAFを一時OFFにしました

先に解決方法を書きますね。
本ブログで利用しているレンタルサーバーのWAFを一時OFFにしたことでうまくいきました。
参考にしたサイトがこちら→WordPressのウィジェットが保存できないとき

本ブログはhetemlレンタルサーバーで運用しています。
hetemlのコントロールパネルから一時的にWAFの設定をOFFにして、ウィジェットのカスタムHTMLをいじってみたところ、うまくいきました。

詳細な手順は以下の通りです。

  1. hetemlコントロールパネルにログインし、WAF設定をクリック
  2. WAF設定のボタンをOFFに切り替えます。(※設定反映まで数十分時間がかかることがあります。)
  3. WordPressの管理画面にログインし、ウィジェットのカスタムHTMLにGoogle Adsenseのコードを貼り付けます。WAFのOFF設定が反映されているのであれば、ちゃんと保存されます。
  4. 再びhetemlコントロールパネルにログインし、WAF設定をクリック。WAF設定のボタンをONに切り替えます。

※WAF設定の設定はしっかりとONに戻しておきましょう。OFFのままでは危険です。

heteml管理画面

考えられた他の原因

さて今回の問題は無事解決し、めでたしめでたしなのですが、この問題は他の原因によって引き起こされる可能性もあるそうです。
同じように困っている方で、既にWAFの設定を試した方は、以下を確認してみると良いでしょう。

プラグイン

WordPressでうまくいかないことがあるとなると、まず疑うべきはプラグインです。
私もとりあえず起動しているプラグインのON・OFFを繰り返して検証してみましたが、すべてハズレでした。で、WAFの設定をしたと。

ちなみに本ブログで利用してるプラグインは下記のモノです。これらは今回の問題とはあまり関係がないようですね。SiteGuardとかが怪しいと睨んでいたのですがね…

  • EWWW Image Optimizer
  • Google XML Sitemaps
  • Intuitive Custom Post Order
  • SiteGuard WP Plugin
  • Table of Contents Plus

他のJSファイルとの干渉

当ブログのテーマ「SANGO」を同じく導入しているブロガーさんのサイトでは、うまくGoogle Adsense広告が表示されていましたので、この線は薄いだろうなと考えました。

ただこのタイプのJavaScriptのエラーって、JavaScriptの読み込み順やバージョン違いでよく起こるんですよね。
プラグイン・WAFの設定をしてもGoogle Adsenseの広告が表示されないって方は、テーマ内のJavaScriptファイルを追ってみると良いでしょう。

まとめ

この記事のまとめ
・WordPressのカスタムHTMLにGoogle Adsenseコードを貼ったら保存できなかった。でも解決した。
・サーバーのWAFを一時的にOFFにしたら、うまくいった。
・この他にもプラグインだったり、JavaScriptファイルの読み込み順だったりと考えられる原因もある。

なにがともあれうまく表示できてよかったです。本当に。
早めに有用な情報にたどり着けたのもラッキーでした。

WordPressにGoogle Adsense広告を貼る時にうまくいかなかったら、参考にしてみてください。