刚刚在海天无影博客中看到了如何在 WordPress 首页中第 n 篇文章后插入广告这篇文章,对我很有帮助,早就想在首页插播广告了,换了模板,还不知道在哪改呢。方法如下:

WordPress博客首页的第一篇或者第X篇日志后显示广告,这样即不会让访客 感觉你的站点很乱,很多广告,又能在你指定的地方放上广告。当然也不一定是广告,在日志后放上图片、小贴士、通知等也是蛮有意思的。方法是在ShawnBlog看到方法有两种,个人推荐第二个,简单,而且不需要重新创建变量。

第一种方法:
1、打开index.php文件,在

1
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

前插入

1
<?php $postcnt = 1; ?>

2、在

1
<?php the_content(); ?>

后加入代码:

1
2
3
<?php if ($postcnt == 1) : ?>
  广告代码
<?php endif; $postcnt++; ?>

如果你还想把广告加在第二篇日志后,那就将第2步中的代码

1
<?php if ($postcnt == 1) : ?>

改成

1
<?php if ($postcnt == 1 || $postcnt == 2) : ?>

以此类推。

此方法的原理:在进入日志列表循环之前,创建一个计数变量postcnt并赋值为1,然后在下面循环输出日志的时候,每输出一篇日志摘要,技术变量postcnt就自加1,这样每篇日志就等于有各自的顺序数字了。然后在if需要的第X篇日志后显示广告。

第二种方法:
打开index.php文件,在

1
<?php the_content(); ?>

后加入代码:

1
2
3
    <?php if ($wp_query->current_post == 0) : ?>
    广告代码
    <?php endif; ?>

如果你还想把广告加在第二篇日志后,那就将代码中的

1
$wp_query->current_post == 0

改成1,第X篇日志改成X-1,以此类推。

此方法的原理,由WordPress自带函数得到日志列表的日志计数,直接利用函数判断在需要的第X篇日志后显示广告。