関連記事の中にアドセンスのインフィード広告を表示する-[stinger plus2]

blog

前回は、「記事一覧」にインフィード広告を表示しましたが、今回は「関連記事」の中にインフィード広告を挿入します。

wordpressのテーマによっては、インフィード広告の挿入用にウィジェットが用意されていたりしますが、まだ対応していないテーマもあります。

「stinger plus2」はまだ対応していないかと思います。

*子テーマ使用を前提にしています。

*adsenseのインフィード広告用コード取得の方法は割愛させていただきます。
ご参考→ インフィード広告ユニットを作成する

 

.phpテンプレートの修正

関連記事を表示するテンプレート「kanren-thumbnail-on.php」を修正します。

20行目に以下の記述があるかと思います。

<?php
if ( $st_query->have_posts() ): ?>
<?php
while ( $st_query->have_posts() ) : $st_query->the_post(); ?>

これを以下のように書き換えます。

 

<?php
$ads_infeed = '4'; //広告を何番目に表示させるか
$ads_infeed_count = '1';
?>
<?php
if ( $st_query->have_posts() ): ?>
<?php
while ( $st_query->have_posts() ) : $st_query->the_post(); ?>
<?php
if($ads_infeed_count == $ads_infeed){
?>
<dl class="clearfix">
 //取得したアドセンスコード
</dl>
<?php
}
$ads_infeed_count++;
?>

ここでは、2行目の「$ads_infeed」のところで、4個目に表示されるようにしていますが、ここはお好みで変更できます。

「dl class=”clearfix”」でアドセンスコードをくくっていますが、これは「stinger plus2」のタグがそうなっているため。

これでアドセンスコードを囲ってやることで、区切り線や隙間がほぼ再現できます。

それでも微調整が必要になる場合がありますが、その時は新たにclass指定を追加してcssで微調整します。

 

PC用とスマホ用でサムネイルの大きさを変えている場合

この場合は、アドセンスコードを2つ取得して、以下のように条件分岐します。

<?php
$ads_infeed = '4'; //広告を何番目に表示させるか
$ads_infeed_count = '1';
?>
<?php
if ( $st_query->have_posts() ): ?>
<?php
while ( $st_query->have_posts() ) : $st_query->the_post(); ?>
<?php
if($ads_infeed_count == $ads_infeed){
?>
<dl class="clearfix">
<?php if(st_is_mobile()) :?>
 //スマホ用のアドセンスコード
<?php else: ?>
 //それ以外用のアドセンスコード
<?php endif; ?>
</dl>
<?php
}
$ads_infeed_count++;
?>

条件分岐について「stinger plus2」では

「st_is_mobile()」を使用した場合、「スマホ」と「PC・タブレット」
「wp_is_mobile()」を使用した場合、「スマホ・タブレット」と「PC」

という分岐になります。

 

*「記事一覧」にインフィード広告を表示するにはこちらの記事をご参照。

https://ks-fdripp.tfmwish.comstinger2_infeeditiran/

 

wordpressの管理画面から、function.phpなどの.phpファイルを編集した場合、うまく動作しない時があります。

その際は、ftpソフトなどでいったん該当ファイルをローカルに保存して、そこで編集を行います。

編集した.phpを、ftpソフトなどで再度アップロードする事で正常動作する場合があります。

.phpを編集する際は、サクラエディタ が、エラーが少ないのではないかと思います。

上のエディタで保存する場合は、文字コード「UTF-8」、BOM「チェック無し」がエラーが少ないのでは無いかと思います。

sakuraediter

タイトルとURLをコピーしました