WordPress文章内第一段后加广告代码方法

WordPress的强大之处就是在于用户基数庞大,几乎所有你所遇到的问题都有解决方法。有时去看别人的博客会发现文章的第一自然段或者第二自然段下面挂的有Google AdSense广告,于是就好奇实现方法。像给侧栏,banner等地方加广告方法都很简单,但是文章内加广告好像并没有那么简单。

因为WordPress调用文章使用的是

<?php the_content(); ?>

正常只能在这段代码前后加广告,而别人是在正文中间加广告,所以要从别的方面考虑。在没有查阅资料之前我想的解决方法是:

文章内部加广告代码

想不到好的解决方法就只能用笨办法,直接在编辑文章时在需要插入广告代码的地方用HTML编辑,直接添加广告代码。

其实在强大的WordPress平台下根本不需要这么麻烦的办法,直接使用下面两种方法就可以实现在文章的某一自然段下加入广告代码。

修改functions.php实现

将下面的代码加入当前使用的主题的functions.php文件,替换添加你的广告代码为广告代码,修改$ad_code,2,$content中的2这个段落数为你想要添加广告的自然段。

//在文章内容的第二段后面插入广告
add_filter( 'the_content', 'prefix_insert_post_ads' );
function prefix_insert_post_ads( $content ) {
	$ad_code = '<div>添加你的广告代码</div>'; 
	if ( is_single() && ! is_admin() ) {
		// 修改 2 这个段落数
		return prefix_insert_after_paragraph( $ad_code, 2, $content );
	}
	return $content;
}
 
// 插入广告所需的功能代码
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 );

使用Insert Post Ads 插件

WordPress后台搜索安装Insert Post Ads插件,安装完成首先设置需要展现广告的页面,设置完成后按Save Setting保存设置

然后点击Post adverts新建广告,advert title填广告位的名称,advert code填广告代码,display the advert选择after paragraph,在后面的框中填入广告想要展示在第几段之后。

before content:第一自然段之前

after paragraph number:某一自然段之后

after content:最后一自然段之后

设置完成后发布广告,再回到前台刷新测试看效果。






文件名称:insert-post-ads

文件大小:

作者信息:方法来自https://www.wpdaxue.com/insert-ads-within-post-content-in-wordpress.html

点击下载