WordPressのウィジェットが保存できなくて困った

Googleアドセンスの広告ユニットを、WordPressのウィジェットにてカスタムHTMLで貼ろうとしていたところ、いつまで経っても「くるくる」するばかりで保存完了にならない。

Googleアドセンスの広告コードを各phpファイルに書きこめるけど、柔軟性に欠ける。

こんな内容で困っている方でしたら当記事で改善。
Googleアドセンスの広告などを設定できるようになると思います。

当記事で関連する内容を箇条書きにしますので、内容に合致しそうであれば、このまま読み進めてもらえればと思います。

この記事で確認できる内容

・有料テーマ「ストーク」のWordPress内、ウィジェットのカスタムHTMLが保存できない原因と解決方法が分かる
・サーバーはロリポップを使っている
・問題はサーバー側のWAFという設定
・functions.phpの件は当記事では扱わない

WordPressのウィジェットが保存できなくて困った

Googleアドセンスの広告表示。

これまで自動広告だけに頼ってた節があったので、良く分からないでいた広告ユニットの新規作成して、WordPressのウィジェットにカスタムHTMLで貼ろうと作業していました。

すると、下記のような画像の症状。

カスタムHTMLが保存完了しない症状
ウィジェットのカスタムHTMLがいつまで経ってもくるくるが終わらず保存完了しない症状

「公開状態」ボタンの左どなりのくるくるが永遠続き、正常に保存されない症状が発生しました。

phpファイルの書き換えでは上手くいくが、しかし…

まずは記事下にレクタングル広告の2枚載せの設定をしようとして、上記操作を行いますが一向に改善しません。

記事下に表示されたレクタングル広告2枚表示
各ブログ記事の下に2画像セットで表示されるレクタングル広告

今回の目的のゴールとしては「自分が表示させたい箇所に、Googleアドセンスの広告が表示されること」です。

そこでphpファイル(今回の場合は親テーマのsingle.php)にて、Googleアドセンスの広告にて作成したレクタングル広告コード掲載。

phpを直接編集して広告コードを載せる操作

保存して確認すると想定通りの表示は出来ましたが、スマートフォン用のページでも、当レクタングル広告が2枚表示されてしまう状態。

PCとスマホそれぞれを表示した状態の画像

「出る/出ない」で考えれば、出ないより出る、この状態の方が良いでしょう。

しかしなんともカッコ悪い(苦笑)。

またユーザビリティ(操作性)も良くないかもしれませんし、なによりGoogleアドセンス側からBAN(=アカウント解除)対象となるかもしれません

一般的な広告表示をする個所が沢山ある事を示している画像
一般的に広告表示をするだろう箇所。全てphpで設定するのは少々リスキーな気がする

また、他のブログ内箇所の広告表示設定も全て、親テーマのphpファイル書き換えを行う必要があり、phpを詳しく知らない自分としてはかなりリスキー。

そして現在利用している有料テーマ「ストーク」のバージョンアップを受け入れたら親テーマが書き換えられるため、広告設定が全て消えてしまいます
やはりこれは、あまり有効な手とは言えません。

サーバーが関与する「WAF」が問題となっている可能性

それで他のWordPress「ストーク」を使っている諸先輩方が、何か同様の症状を解決に導いた話がどこかに落ちていないか確認したところ、以下の2つのキーワードが浮かびました。

  • functions.php
  • WAF

まずfunctions.phpですが、自分で有料テーマ:ストークを購入してから、ほとんど手つかずのハズで、全く触った記憶はありません。

WAFというものも全く知らず、サーバー側で設定されているにしても、自分で数年前から契約しているロリポップでもそんな設定があるかどうかも知らず。

WAFとは

WAF(ワフ)はWeb Application Firewallの略で、Webアプリケーションのぜい弱性を悪用した攻撃からWebサイトを保護するセキュリティ対策です。Webサーバーの前段に設置して通信を解析・検査し、こうした攻撃からWebサイトを保護し、不正ログインを防ぐ役割で用いられます。

オンライン・バンキングやショッピングサイトのように、ユーザーからの入力を受け付けたり、リクエストに応じて動的にページを生成したりするなど、アプリケーションを作りこんだWebサイトの保護に適しています。

WAFとは?|SiteGuard|キヤノンITソリューションズ

それでさらに色々調べたところ、下記のソースより「ロリポップのWAF設定を無効にしたところ、カスタムHTMLの保存できないくるくるが解消した」という内容を発見しました。

【参考】:WordPressのウィジェットが保存出来ないトラブルを解消する方法 | サダメディア

ロリポップサーバーのWAF設定
実際のロリポップサーバーWAF設定変更箇所

WAFの無効化にて改善。他のGoogleアドセンス広告も設置が出来た!

上記サイトで言われた方法を早速試してみました。

  1. ロリポップにログインし、当該のドメインのWAFを無効化
  2. (WAF無効化が反映されるまで)5~10分ほど待つ
  3. WordPressのウィジェット、当該のカスタムHTMLで広告コードを入力→保存

今度は何の問題もなく、すんなり保存できました。

また今回他にもGoogleアドセンス広告として保存したかった箇所(サイドバー、アイキャッチ画像下、広告上)も正常に保存が完了できました。

アイキャッチ画像下にリンク広告を表示した画像
目次上やアイキャッチ画像下にも正常に広告表示が出来た

なお、参考にさせていただいたブログにも書かれていますが、全てのカスタムHTML設定が完了したら「無効化したWAF機能を有効化すること」を忘れずに行ってください。

このWAF機能を有効化しても、カスタムHTML内で設定したものが解除される訳ではないですので、その点ご安心ください(動作確認済)。

またこのロリポップのWAF機能、現在のユーザーは変更しなくてもWordPressのウィジェット内カスタムHTMLには影響を与えないという事になっています。

ただ自身がロリポップに契約して使い始めたのが、恐らく2014年~2015年頃で、もしかしたら自分の契約状態のために起こった事象ということかもしれません。

※WordPressのドメインを新規取得して使い始めたのは2017年10月頃なので、それ以降にロリポップを契約したユーザーには無関係の情報かもしれない可能性

いずれにせよ、今回自分が悩んだ状態と同じユーザーさんが、当記事をご覧になって問題解決されるなら嬉しい限りです。

コメントを残す

メールアドレスが公開されることはありません。