※追記:この記事はプラグインを使わない方法になります。

だいたいのブログでは、トップページは記事の一覧になっていて、各記事の全文が表示されていたり、「続きを読む」で抜粋された部分だけ表示されていたりするんじゃないでしょうか。

その記事の一覧における最初の記事(一番上に表示される記事)の記事下にグーグルアドセンスを入れる方法をメモ的な感じで書いていきたいと思います。

※記事下とありますが、トップページの記事一覧で全文を表示している場合にはテキスト下でしょうか。また、記事タイトルにあるように対象はワードプレスなので、他のブログはわかりません。ご了承ください。

スポンサーリンク
[adsense]

記事のループ部分(通常はindex.php内)を編集する

詳しいことは僕もわかりませんが、記事のループの部分を編集することで、最初の記事下にだけアドセンスを入れられるようになります。

編集する記事のループ部分は、多くのテーマではindex.phpの中にあると思いますが、使用しているテーマによってはloop.phpの中だったりします。

一応、loop.phpの編集についても具体例を書いておきます。
※長くなってしまったので、loop.phpの具体例については別記事としました。

index.phpを編集する

1.ワードプレスの「外観」→「テーマ編集」と進み、右側のテンプレートの中にある「メインインデックスのテンプレート(index.php)」を開く

※最初の記事下だけにアドセンスを表示する方法はいくつかあり、編集して上手くいくかどうかも使っているテーマによって異なります。

編集前のファイルはどこかにコピペして保存する等して、上手くいかなくてもすぐ元に戻せるようにしておきましょう。

ここでは2つの編集方法を載せておきます。
どちらもwhile (have_posts())の周辺をちょこっといじるという点では同じです。

方法その1、「the_post();」の後に「$counter++;」を加える

(参考URL:http://info.yadoku.com/archives/558
2-1-1.index.php内にある、while (have_posts()) : the_post(); ?>という部分を探す

2-1-2.while (have_posts()) : the_post(); ?>が見つかったら、「 the_post();」の後に「$counter++;」を加える

変更前
while (have_posts()) : the_post(); ?>

変更後
while (have_posts()) : the_post(); $counter++; ?>

2-1-3.アドセンスを表示させたい部分に以下のコードを貼り付ける

<?php if ($counter <= 1) {
print <<<EOD
自分のアドセンスのコードを入れる部分
EOD;
} ?>

表示させたい部分に上のコードを貼り付けます。
各テーマによってどこに入れるかは変わってくるはずなので、いろいろ試してみましょう。

方法その2、<?php $loopcounter = 1; ?>を入れたりする

(参考URL:http://hisasann.com/housetect/2008/04/wordpressadsense.html

2-2-1.while (have_posts()) : the_post(); ?>の上に<?php $loopcounter = 1; ?>を入れる

「while (have_posts()) : the_post(); ?>」の上にと書きましたが、正確には「<・・・while (have_posts()) : the_post(); ?>」のすぐ上です。

「・・・」の部分はテーマによって異なります。

<?php $loopcounter = 1; ?>
<・・・while (have_posts()) : the_post(); ?>

こんな感じです。
後々、自分が実際に入れたものを具体例として記事にしようかと思います。

2-2-2.endwhile;の上に<?php if ($loopcounter <= 1) : ?>など以下のコードを入れる

「endwhile;」は大抵<?php endwhile; ?>となっているので、その上に

<?php if ($loopcounter <= 1) : ?>
自分のアドセンスのコードを入れる部分
<?php endif; ?>
<?php $loopcounter++; ?>

を入れます。

<?php if ($loopcounter <= 1) : ?>
自分のアドセンスのコードを入れる部分
<?php endif; ?>
<?php $loopcounter++; ?>
<?php endwhile; ?>

こんな感じですね。

※<?php endwhile; ?>は、<?php endwhile; else: ?>となっていたり、<?php endwhile;とelse : ?>が離れているということもあります。

方法その1、その2ともに自分のアドセンスのコードを入れる部分に自分のアドセンスコードを貼り付けるのを忘れずに!

 

以上です。
この2つの方法で、だいたいのテーマについてはカバーできていると思います。

一方で失敗しても、もう一方では上手くいったりということも十分考えられるので、いろいろと試してみてください。

また、index.phpだけでなく、archive.phpやcategory.phpなどでもこの設定をすることで、アーカイブやカテゴリーに表示される最初の記事の下にアドセンスを入れてやることも可能です。
いろいろと試してみてください。

本当は実際にした編集を、自分が使っている(使ってきた)テーマを用いて具体例として書こうと思ったんですが、長くなってしまったので今日はこの辺にしておきます。