無効クリックの対策プラグイン「AdSense Invalid Click Protector」の設定方法を説明します。
また、このプラグインはwordpress側で新たな追加コードの設定をして初めて機能します。
プラグインをインストールしただけでは無効クリックを防げない場合があるので注意が必要です。
記事では、wordpressテーマ「Cocoon」に設定する方法を紹介します。
無効クリック対策プラグイン「AICP」とは?

「AdSense Invalid Click Protector」(呼称:AICP)は、Google AdSenseの無効クリックを防止するプラグインです。
この記事では以下「AICP」と表記します。
ブログの運営者に落ち度が無くても、無効クリックされた場合は「無効なトラフィックの問題」でペナルティを受けます。
その結果、アカウントが停止されないまでも30日以内の広告配信の制限を受けたり(事実上停止)、最悪の場合AdSenseのアカウントが停止、無効になるリスクがあります。
その対策として、現在の有効な手段はプラグインAICPを導入することになります。
*無効なトラフィックの問題が発生してしまった場合は先にこちらの記事をご覧ください。
AICPの導入で可能な対策
・ブロックされたユーザーのIPアドレスを記録できる。
AICP導入の注意点
AICPはAdSenseの自動広告で使うことはできません。自動広告はオフで使います。
【キャッシュプラグインの制限】
AICPを使用する場合はキャッシュプラグインを無効にする必要があります。
「AdSense Invalid Click Protector」のインストール方法
無効クリック対策のプラグイン「AdSense Invalid Click Protector」は、次の環境でインストールしました。(2021年1月)
wordpress バージョン 5.6-ja
php バージョン 7.3.16
Cocoon バージョン 2.2.5.7
2022年12月14日現在:以下のスペックで動作しています。
- wordpress バージョン 6.1.1-ja
- php バージョン 7.4.33
- Cocoon バージョン 2.5.4.2
キーワードからAICPで検索してプラグイン「AdSense Invalid Click Protector」をwordpressにインストールし有効にします。

基本的に設定はデフォルトでOKです。
これでプラグインAICPのインストールは完了しました。
インストールは完了しましたが、このままではブロックすることはできません。
この先説明する処理をすることで初めてブロックできるようになります。
AICPの設定項目の説明
基本的に設定はデフォルトのままでOKですが、念のため各設定項目を簡単に説明します。

(1)Set the Ad Click Limit
同じユーザーがAdSense広告何回クリックしたら広告表示を停止するかを設定します。デフォルトは3回に設定しています。
(2)Click Counter Cooke Expiration Time
同じユーザーの連続クリックをカウントする時間間隔。デフォルトの3時間のままにしておきます。
(3)Set the Visitor Ban Duration (default: 7 days)
無効クリックしたユーザーに対し広告を表示しない期間。デフォルトの7日間です。
7日間で記録も消えてしましますので、以下を参考に最低でも1カ月(30日)以上に設定するのが好ましいと思います。
(4)Do you want to use the IP-API Pro key?
有料版を使用しないので「No」です。
(5)Provide your IP-API Pro key
有料版Iを使用しないのでこのまま何も入力しません。
(6)Do you want to block showing ads for some specific countries?
特定の国をブロックしないので「No」のままです。
(7)Banned Country List – Put ISO ALPHA-2 Country Codes
特定の国をブロックしないので空白です。
上記の設定だと、同一ユーザーが3時間以内に3回以上クリックするとAdSense広告の表示が7日間停止されるということになります。
実際に運用してみて変更が必要な場合は調整してください。
AdSense広告をAICPで保護する設定方法
実はこのプラグイン「AICP」はインストールし有効化しただけでは機能しないのです。
AICPプラグインを使うには、AdSense広告コードをAICPで保護することが必要になります。
仕組みは、AdSense広告がサイトに表示される前にAICPのチェック処理が動作するようにします。
そのために特別なコードを作成することが必要なのです。
難しいように聞こえますが仕組みは簡単なので初心者でも対応することが可能です。
設定方法の手順は以下の通りです。
(2)ショートコードを作成する。
(3)Cocoon子テーマのfunction.phpにコードを設定する。
(1)AdSense広告コードを用意する。
AdSense広告ではディスプレイ広告やテキスト広告などがあります。この記事では、どこにでも配置できるディスプレイ広告で作ることにしました。
AdSenseの「新しい広告ユニットの作成」から「ディスプレイ広告」をクリックしてコードを取得します。タイプは配置に汎用性のあるレスポンシブを選びます。

(2)ショートコードを作成する。
ここでAdSenseディスプレイ広告のコードを特別なコードで挟みます。
特別なコードはWordPress.orgの「AdSense Invalid Click Protector (AICP)」プラグインを参考にします。(英文です)
この特別なコードの説明は次の通りです。(参考まで)

WordPress.orgで説明しているコードは使っているPHPのバージョンの違いで2種類あります。
「PHP version < 5.3,」と「PHP version >= 5.3,」です。
参考に2種類のコードを画像で一部だけキャプチャーします。
「PHP version < 5.3,」のコード

「PHP version >= 5.3,」のコード

例えば、phpのバーションが7.3.16の場合は「PHP version >= 5.3,」の方を使います。
「PHP version >= 5.3,」のコードを参考に、以下のように特別なコード(ショートコード)を作成します。
ショートコードの作成方法
ショートコード名は、ad01 とします。
AdSenseのディスプレイ広告のコードを下の画像の通り赤枠の部分に挟みます。
(下の画像赤枠のAdSense広告コードはダミーです)

上記のショートコードでは、名称をad01としています。
ショートコード
下記に掲載したコードは、実際にブログに設定して現在使っています。もし、動作に問題がある場合は、直接WordPress.orgのサイトから取得して加工してください。
AdSenseの部分は、ご自分のコードに変更してください。
function ad01Func() {
if( aicp_can_see_ads() ) {
$adCode = '
<div class="aicp">
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-1234567890123456"
data-ad-slot="1234567890"
data-ad-format="auto"
data-full-width-responsive="true"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>';
return $adCode;
} else {
return '<div class="error">広告の表示がブロックされています。</div>';
}
}
add_shortcode('ad01', 'ad01Func');
コードの参考にさせて頂いたのは「ゼロからブログ」さんの記事です。コードの作り方を紹介していますので、是非参考にされるといいです。
(3)Cocoonのfunctions.phpファイルにコードを貼る。
初心者がfunctions.phpファイルに直接書き込むのはかなりリスクがあります。不安な方は、functions.phpファイル用のプラグイン「Code Snippets」を利用すると安心ですね。
wordpressのテーマがCocoonの場合は、簡単に処理することができます。
以下にCocoonに設定する方法を紹介します。
テーマ「Cocoon」に設定する方法
Cocoonはとても便利なテーマです。子テーマのfunctions.phpファイルに簡単にコードを貼りつけることができます。
以下のその手順を紹介します。
(1)外観 ➡ テーマエディタ
ダッシュボードから「外観」➡「テーマエディタ」へ進みます。

(2)テーマのための関数
右サイドに「テーマのための関数」があるのでクリックします。

(3)コードをペーストします。
CocoonのChild : テーマのための関数(functions.php)の「//以下にテーマようの関数を書く」の下にコードをペーストします。
最後に「ファイルを更新」をクリックして完了です。

(4)広告の配置方法
wordpressのダッシュボードの左サイドバーにある「Cocoon設定」から「広告」を選びます。
「アドセンス設定」にある「広告コード」欄にショートコードの記号を入力します。

後は、今まで通りに広告を配置したい場所を指定すれば、アドセス広告が表示されます。
無効クリックの監視方法
wordpressのダッシュボードから無効クリックを監視することができます。

ブロックしたデータは緑のボタン「Check All Banned User Details」をクリックして確認します。
下のようにブロックしたIPアドレスやクリック回数などが確認できます。
このデータは無効なトラフィックの問題が発生したときの証明になります。

コード設定の効果
2021年1月にコードを設定してから1年間は無効クリックが6つのブログの内3つで発生しました。
時にアクセスの多いブログでは多発し、クリック回数は3桁に及ぶこともありましたが、全てブロックしています。
最近ではGoogleアドセンス側で無効クリックを制御しているようで、ここ半年では1回程度しか発生していません。
全てIPアドレスを特定できておりホストサーバーの名称、位置、住所まで追跡しています。
Googleアドセンスへの報告を随時行っています。ここで使ったコードを設定するのはちょっと難しく感じますが、実際にやってみると意外と出来てしまいます。
AdSenseとアナリティクスの連携
また、AdSenseとアナリティクスを連携することで、どこの地域からアドセンスの広告をどれ位クリックしたのかもわかります。
この方法は以下の記事を参考にして設定してください。
おわりに
「無効なトラフィック」の問題はAdSense広告の配信が停止するリスクがあります。
AdSenseを導入するかたは早めの対策をおすすめします。