You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress文章段落间插入多段广告 合并代码适配Astra子主题

问题解答

多广告实现逻辑与常见疑问

  • 多条广告投放不需要重构现有代码,只需要在已有的内容插入函数中新增广告变量、多次调用插入方法即可,适配Astra子主题的场景不需要做额外兼容,直接粘贴到子主题functions.php文件即可生效
  • 广告代码是否需要独立生成完全取决于你的投放需求:如果要投放相同内容的广告,可以直接复用同一段广告代码;如果要投放不同内容的广告,就需要分别生成独立的广告代码填入对应变量
合并后可直接使用的完整代码
// 在文章内容指定段落后插入多条广告
add_filter( 'the_content', 'insert_post_ads' );
 
function insert_post_ads( $content ) {
    // 配置第一段广告代码,替换单引号内的内容为你的实际广告代码
    $first_ad_code = '<div>Insert your first Ads code here</div>';
    // 配置第二段广告代码,如果要投放相同广告可以直接写 $second_ad_code = $first_ad_code;
    $second_ad_code = '<div>Insert your second Ads code here</div>';
 
    if ( is_single() && ! is_admin() ) {
        // 第一个参数是广告代码变量,第二个参数是插入的段落位置(数字代表第N段后插入),可自行修改
        $content = prefix_insert_after_paragraph( $first_ad_code, 3, $content );
        $content = prefix_insert_after_paragraph( $second_ad_code, 6, $content );
        return $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 );
}

使用注意事项

  • 粘贴代码前请先备份子主题functions.php文件,避免语法错误导致站点异常
  • 如果需要新增更多广告,只需要仿照现有逻辑新增广告变量,再追加一行prefix_insert_after_paragraph调用即可
  • 代码仅在前台单篇文章页生效,不会影响后台编辑体验和其他页面内容

内容的提问来源于stack exchange,提问作者MD. ASHIKUR RAHMAN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 15:45:04