アドセンスを記事中に挿入するプラグインAds into post

旧名・H3AD
アドセンスを記事中のH3、Pタグの直前に挿入出来るプラグイン。
aip_code

WordPressプラグイン・Ads into post

画像はH3AD時代の物ですが、こんな感じに表示されます。

IMG_5869

 

H3AD時代はモバイルをベースに作っていましたが、
サイドバーの収益が悪いのでデスクトップにも対応出来る様に改造しH3タグで条件に合致する
場所が見つからなかった場合にはPタグにも表示する様のしました。

よって今までプラグイン名H3ADでしたがH3だけで無くなったのと
もしかしたら公式プラグインディレクトリに登録するかもしれないので分かりやすい名前にしました。

その内、登録するかもしれないので設定方法と仕組みなどを書いておきます。

Ads Into Postの設定

Ads Into Postの設定はH3タグ、Pタグ、デスクトップ、モバイルに分かれていますが
分けると2つの値を設定します。

Ads Into Postはキャッシュプラグインなどを導入していない場合は
アクセスがある度に動作するので、なるべく早く動作させる為データベースへの設定の保存はしません。
Ads Into Postのでは直接プラグインのconfig.phpファイルに直接、設定値、アドセンスコードを記入する
必要があるので初心者の方は難しかもしれません。

最初はプラグイン本体に設定を入れていましたが、
万が一アップデートを行うと設定データが全部飛んてしまう為、設定用のファイルを作りました。

  • 設定1として本文始めからアドセンスを表示しないバイト数

Ads Into Postのはモバイルをベースに作ったので本文上にある広告から
挿入する広告の間隔をスマホで1ビュー以上離す必要があります。
なので、ブログによって異なりますが本文始めから離したいバイト数を入れます。

もし、挿入したくない場合はこの数値を999,999などにします。

  • 設定2としてアドセンス挿入位置から本文末までのバイト数

アドセンス挿入位置から本文末までバイト数が設定2以下だった場合は
アドセンスの挿入を中止します。

実際の設定値
(モバイル)
$h3ad_fbyte = 400; //h3タグを検索を開始するbyte数(設定1)
$h3ad_ebyte = 800; //h3タグ以降に必要なbyte数(設定2)
$h3ad_pfbyte = 600; //pタグを検索を開始するbyte数(設定1)
$h3ad_pebyte = 800; //pタグ以降に必要なbyte数(設定2)

$h3ad_mpush  (アドセンスコード)
(デスクトップ)
$h3ad_dfbyte = 400; //h3タグを検索を開始するbyte数(設定1)
$h3ad_debyte = 400; //h3タグ以降に必要なbyte数(設定2)
$h3ad_dpfbyte = 400; //pタグを検索を開始するbyte数(設定1)
$h3ad_dpebyte = 400; //pタグ以降に必要なbyte数(設定2)

$h3ad_dpush  (アドセンスコード)

上の設定はBLOGEで表示&テストした時のデフォルト値ですが
導入後、実際に記事を確認して修正してください。
万が一、Ads Into Postが原因でアカウントが停止されても自己責任でお願いします。

アドセンスコードにはhtmlも挿入できるのでCSSを使ったレイアウトなどもできますが
シングルクォートを含まない様にしてください。

シングルクォートがhtml中にあるとプラグインが動作しなくなります。

Ads Into Postの仕組み

Ads Into Postでは最初にH3タグを検索します。
H3タグを検索する時、検索の始点を設定1にします。
見つかった場合は、アドセンス挿入位置から本文末までのバイト数を計算し
設定2以下だったらアドセンスの挿入を中止します。
それ以外の場合は、モバイル環境ならモバイル用
デスクトップ環境だったらデスクトップ用のアドセンスコードを本文に結合します。
もしH3で見つからなかった場合はPタグを検索しますが
処理はH3とほぼ同じです。

あとがき

現在、Ads Into Postはほぼ欲しい機能を入れたので今後どうしようかな?と思ってます。
もしかしたら、公式プラグインディレクトリに登録するかもしれません。

ただし、設定画面を作る気は無いので、プラグインファイルを直接編集する必要があります。
これはオプションを読み込むとプラグインの動作が多少遅くなります。

これがisShrinkerみたいに投稿時だけなら良いのですが、
アクセスのたび実行されるのでアクセス数によってはバカになりません。
まぁ、キャッシュ系のプラグインを入れていればあまり影響もないかもしれません。

また、一旦設定が決まったらあまり設定も変更する事はないので
プラグイン本体定義型にしました。
アップデートした時の対策にプラグイン本体の設定記述部分をconfig.phpに
移行しましたが、よく考えたら外部化しても意味が無い気がして来ました。
とりあえずしばらくは自分専用なので、テストしつつじっくり考えたいと思います。
今すぐ欲しい!と言う方はeax(@eaxjp)まで!

追記 2017年11月7日

新バージョンを作りました。詳しくはこちら
アドセンスを記事内に入れるWordpressプラグインAds into post 3