WordPress如何在文章页面随机位置插入广告
一般,我们在申请完谷歌广告,总是想找位置插广告。除了首页等其他页面广告,我们最关心的往往就是文章页面的广告了。其中,最想添加的莫过于正文随机位置的广告了。
一般,我们可以在标题前后插入广告,正文结尾插入广告。那么,如何在正文随机位置插入广告呢,今天就为你带来如何在文章页面随机位置插入广告的方法:
编辑主题function.php文件,在适当位置添加如下代码:可以放在<?php下面一行
// 随机插入广告
add_filter( ‘the_content’, ‘prefix_insert_post_ads’ );
function prefix_insert_post_ads($content){
$pattern = “/<p>.*?<\/p>/”;
$paragraph_count = preg_match_all($pattern,$content); //计算文章的段落数量
if($paragraph_count >= 1 && is_single()){//这里的数字1表示,文章段落数大于1,则插入广告
$paragraph_count -=2;
$insert_paragraph=rand(3,$paragraph_count);//生成随机数,插入广告
$ad_code = ‘这是你要插入的广告代码’;
return prefix_insert_after_paragraph( $ad_code, $insert_paragraph, $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 );
}
当然,如果你不想改动主题文件,可以使用子主题的方式,修改function.php文件,可以参考这篇文章:WordPress JustNews子主题创建教程
2020年11月30日 19:58当然,如果你觉得这样插入后的广告前后间距不对,justnews主题可以用以下代码将广告代码包围:
<div class=”wpcom_ad_wrap ad_single_0″>广告代码</div>
2020年11月30日 19:59最后,下图分别为代码放置位置以及实际的广告效果
2020年11月30日 20:02