ブログに広告を貼り付ける時、ちょっとしたひと手間を加えることでクリック率や成約率が大きく変わることがあるかもしれません。
その手段の1つが時間帯によって表示する広告を切り替えること
朝はAdsenseで、昼はあるASPの広告、夜は別のASPに切り替えるという風な感じです。
ASP関連記事 : ブロガーが使うべき超お得なASPまとめ【2019年最新】
こういう広告切り替えをやろうとした場合、PHPを使えばそんなに難しくはありません。
そこでPHPを使ってWordPressで時間帯ごとに表示広告を切り替える方法を解説します。
PHPで時刻を取得するには
まず知っておかなくてはならないのはPHPでどうやって時間を取得するかという事です。PHPでは時刻を取得するのに次のようにdate関数にフォーマットを渡します。
date("Y/M/d/ H:i:s");
フォーマットは出力される日付文字列の書式でよく使われるのは次のようなフォーマットです。
フォーマット 文字 |
説明 | 範囲 |
---|---|---|
Y | 年(4桁) | 西暦 |
y | 年(2桁) | 00~99 |
m | 月(2桁) | 01~12 |
d | 日(2桁) | 01~[28-31] |
H | 時間(24時間単位) | 00~23 |
i | 分 | 00~59 |
s | 秒 | 00~59 |
ここでは時間帯ごとに広告を切り替えるので時間を数字として取得するために次のコードを使います。
intval(date("H"));
date("H")で時間が得られますが、それだと扱いにくいのでintval関数を使って数値に変更します。この値に応じてif文で表示する広告を変えるだけです。
広告切り替えの方法
標準のWordPressで広告の切り替えを実装しようとするとテーマの編集などからPHPを直接編集しなくてはなりません。もしエラーなどがあるとサイト全体がダメージを受けFTP経緯でファイルを編集しなおしになります。
それはあまりにもリスクが大きいのでここでは安全にページや固定領域にPHPを組み込めるプラグインを使用します。ただし固定領域と記事内では別々のプラグインを使用します。
固定領域で切り替える場合
例えばサイドバーやSNSボタン上などの固定領域で広告の切り替えをしたい場合、ウィジェットでPHPを扱えなくてはなりません。
そのために必要なのが「PHP Code Widget」というプラグインです。「プラグイン」ー>「新規追加」と進んでプラグイン名で検索するとすぐに出てきます。
直にダウンロードして使う場合は以下のURLからダウンロードできます。
https://ja.wordpress.org/plugins/php-code-widget/
インストールし有効化するとウィジェット画面(「外観」ー>「ウィジェット」)でPHPコードを貼り付けるウィジェットが表示されます。
「PHPコード」というウィジェットを表示したい領域にドラッグ&ドロップすると設置されます。以下は設置例です。
サイドバーなどにウィジェットを設置し、次のようなコードを書けば広告が時間帯で切り替わります。
<?php
date_default_timezone_set('Asia/Tokyo');
$time = intval(date('H'));
if(6 <= $time && $time < 12){
echo <<<EOM
<!-- 広告タグ -->
EOM;
}else if(12 <= $time && $time < 18){
echo <<<EOM
<!-- 広告タグ -->
EOM;
}else{
echo <<<EOM
<!-- 広告タグ -->
EOM;
}
?>
これは一例ですが、朝(6時~12時)、昼(12時~18時)、夜(18時~6時)で表示する広告を切り替えています。<!-- 広告タグ -->
の部分は実際の広告タグに置き換えてください。
記事内で切り替える場合
記事内で広告を切り替えるのに必要なのは「Post Snippets」という記事内にスニペット(再利用できるコード)を埋め込めるプラグインです。「プラグイン」ー>「新規追加」でプラグイン名で検索すると次のように検索結果に出てきます。
ダウンロードして使う場合は以下のリンクからダウンロードできます。
https://ja.wordpress.org/plugins/post-snippets/
有効化すると「設定」ー>「Post Snippets」からスニペットの作成画面に進めます。その画面で「Add New Snippets」を押すと次のようなスニペット編集画面が出てきます。
このとき「Shortcode」と「PHP Code」に必ずチェックをつけてください。
その後スニペット入力欄(上の画像だと /** 広告切り替えコード */ と書いてある場所)に次のようなPHPコードを入力します。
date_default_timezone_set('Asia/Tokyo');
$time = intval(date('H'));
if(6 <= $time && $time < 12){
echo <<<EOM
<!-- 広告タグ -->
EOM;
}else if(12 <= $time && $time < 18){
echo <<<EOM
<!-- 広告タグ -->
EOM;
}else{
echo <<<EOM
<!-- 広告タグ -->
EOM;
}
固定領域とコードはほとんど同じですが、違うのはPHPの開始タグ (<?php
) と終了タグ (?>
) がいらないということです。もし書いてしまうとエラーになるので要注意
あとは記事の編集画面のビジュアルエディターからボタンを押すとスニペットの選択画面が出てくるので、好きな場所に作成したスニペットを挿入すればOKです。
まとめ
以上が時間帯で広告タグを切り替える方法
もちろん時間帯だけでなく月単位・日単位で広告を変えることも可能でカスタマイズ方法は無限にあります。
ただし広告タグを切り替えたことで逆に収益が下がるという事も考えられるのでどういう層がどの時間帯にアクセスしているのかよく調べたうえで広告の切り替えは行いましょう。
ちなみに掲載広告を探すなら、なるべく多くのASPに登録しておいた方がいいです。
案件が見つけやすいASP一覧については次記事でまとめたのでご覧ください。
1つのASPだと案件が見つかりにくいので複数ASPの併用がベストですね。
フク郎
最新記事 by フク郎 (全て見る)
- トレンドブログが資産に?放置でアクセス急増の事例 - 3月 14, 2024