WordPress博文中间插入AdSense广告的方法

见到赖博主在博文中间展示AdSense广告,我觉得这效果不错,问了他之后,他直接告诉了我代码,我自己也用英文搜索了一下,发现方法很简单,只需要添加一小段代码即可,完全不需要插件。

将你的AdSense广告代码放在下述代码中的“AdSense广告代码”处,然后再将此代码放到你的WordPress博客主题中的functions.php文件末尾,就可以实现在博文第二段后显示AdSense广告。

//Insert ads after second paragraph of single post content.
add_filter( 'the_content', 'prefix_insert_post_ads' );
function prefix_insert_post_ads( $content ) {
$ad_code = '在此处两单引号之间插入AdSense广告代码';
if ( is_single() && ! is_admin() ) {
    return prefix_insert_after_paragraph( $ad_code, 2, $content );
}
return $content;
}

// Parent Function that makes the magic happen
function prefix_insert_after_paragraph( $insertion, $paragraph_id, $content ) {
$closing_p = '</p>';
$paragraphs = explode( $closing_p, $content );
foreach ($paragraphs as $index => $paragraph) {
    if ( trim( $paragraph ) ) {
        $paragraphs[$index] .= $closing_p;
    }

    if ( $paragraph_id == $index + 1 ) {
        $paragraphs[$index] .= $insertion;
    }
}
return implode( '', $paragraphs );
}

同理,修改”ad_code”后面的数字2为1即可实现第一段后显示广告,一切由你决定。上述代码中以下代码是判断单篇日志显示广告:

    if ( is_single() && ! is_admin() ) {
    return prefix_insert_after_paragraph( $ad_code, 2, $content );
}
return $content;

如果将上述整段修改成以下代码,可实现所有页面第二段后显示广告:

return prefix_insert_after_paragraph( $ad_code, 2, $content );

这个方法理论上应该不错,在日志中间显示AdSense广告,能与内容更加显得融为一体,广告点击效果也就自然要好一些。我之前知道这种方法肯定能通过插件实现,但我不喜欢在WordPress中安装太多插件,于是一直没有用。现在知道了这个技巧,分享给大家,也感谢赖博士。

54 thoughts on “WordPress博文中间插入AdSense广告的方法

    1. 土木坛子 文章作者

      说惭愧的应该是我,插入了这么多广告,不过这是我的自由嘛,再说,你们这些热心读者都看不到广告的,我知道的,要让你们这些网络高手看到广告太不容易了。

      回复
      1. 土木坛子 文章作者

        看你们说的,我还要建议你们安装广告过滤插件呢,我自己也安装了啊。
        从来没有想过要从熟悉读者身上赚广告费哦,我甚至还建议你用RSS订阅呢——完全看不到广告。

        回复
  1. ACMer

    不客气。。
    问题是你不喜欢插件。。。
    不过话说,你可以装一个代码高亮的插件,这样会更好看。。我用的是 “Better WordPress Syntax”

    回复
    1. 土木坛子 文章作者

      我插入代码的时机不多,再者,我能以代码的格式在博文中显示而不是直接复制粘贴已经不错了~
      至于你说的高亮,我还是免了,而且你说的还是插件形式。不还,还是谢谢建议了。

      回复
    1. 土木坛子 文章作者

      不必,广告收入这个东西有则好,无亦行。你愿意过滤广告就过滤,都是你的自由,就像网站主有自由投放广告一样。
      而且,绝大部分广告收入都是靠初次访客贡献的。

      回复
  2. 拖鞋门吹雪

    其实wordpress的插件与代码的运行占用资源应该是一样的吧,把这段做成插件还更方便些?

    回复
    1. 土木坛子 文章作者

      无所谓了,多安装一个插件就让系统多了一些东西。而用代码的方式就不会,无非就是生成静态页面时多运行这么一个语句,静态页面后就无所谓了,不存在对资源占用的问题。

      回复
    1. 土木坛子 文章作者

      我更新的频率保持也不是一天两天了,不过我还是没有固定的频率,想到哪写到哪。
      不用抱歉,我欢迎你们这些回头客过滤广告。

      回复
    1. 土木坛子 文章作者

      我喜欢GOOGLE的产品,自然也喜欢ADSENSE,它的广告相对来讲是最良心的,不弹出,不低俗,采用了最智能的算法,尽可能提供给读者有用的信息——这才是广告的最高真谛。
      再者,独立博客上投放一些广告,也算是证明它的价值形式之一吧~主机费不用愁了……

      回复
        1. 土木坛子 文章作者

          这一段由于香港的局势,导致香港的数据中心也不太稳定,我这网站是托放在香港的ICDSOFT,所以有时候的确存在不稳定的时候。我也没有办法。

          回复
  3. 筱雨生

    网站停了好久,数据没了,杯具,起初刚恢复我申请了一下AdSense,谷歌闲我内容少,居然没批复,好严格啊。记得你之前有写过英文博客,不知道现在还写么。

    回复
    1. 土木坛子 文章作者

      取决于你的流量来自何方。有的也赚钱,有的没有什么钱途。
      否则也不会有那么多个人站长还投放着ADSENSE广告的。
      抱着“无”的心态去投放吧,也许就“有”了。

      回复
  4. 小义

    博主,你好,请问下adsense广告在网站首页不显示,内容页可显示,是什么问题?您知道吗?

    回复
    1. 土木坛子 文章作者

      这个跟你的设置有关,尤其是与主题有关——如果你是直接把广告代码放到主题文件里面,你可以将代码放到控制所有页面显示的文件里。一般是content.php文件里,而不是single-content.php。

      回复
  5. penkzhou

    博主建议wordpress写作技术博客安装SEO插件吗?我想通过seo让自己的技术文章更容易让别人搜到。

    回复
    1. 土木坛子 文章作者

      SEO的目的是向搜索引擎推荐好内容,而不是推荐不优秀的内容。所以最关键的还是创作优秀的内容。

      就我的经验来说,我觉得WordPress的SEO工作已经做得很好,完全不必要SEO这些插件——虽然不太可能有负面作用,反正我没有安装任何SEO插件,也不太用这些技巧。

      Google对的博客挺重视的——从搜索的质量来看。

      回复
  6. Shailie

    hi, 文章写得很好。 但我在设置时遇到问题 我是在wordpress的 twenty fifteen里的content.php计入adsence的广告代码 可能其中不小心删除原文(因为刚开始弄 来来回回增加删除)导致现在我的post里显现不了文章(但按edit post还是有文章在),到底这么修复?
    谢谢

    回复

卓扬国旅进行回复 取消回复

电子邮件地址不会被公开。 必填项已用*标注