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

如何实现仅当文章URL带分页数字时才显示AdSense广告

WordPress文章分页差异化展示AdSense广告实现方案

你原有代码无法生效有两个核心原因:一是is_post_url()不是WordPress原生提供的函数,本身无法正常执行;二是判断逻辑完全没有覆盖分页页码识别、按页码梯度展示广告的需求。

逻辑规则对齐需求

  • 无分页后缀的文章首页(第1页,URL格式domain.com/post-slug):不加载任何广告
  • 第2页及以后的分页文章(URL格式domain.com/post-slug/2、domain.com/post-slug/3等):加载基础广告位
  • 第3页及以后的分页:额外加载更多广告位,页码越靠后可按这个判断逻辑继续追加广告位块

可直接替换使用的完整代码

直接替换你原有整段广告判断代码即可,不需要额外修改其他文件:

<?php
// 获取当前文章内分页页码,非分页页面默认值为1
$current_pagination = get_query_var('page') ?: 1;

// 仅非第一页时输出广告
if ($current_pagination > 1):
?>
<div id="baseAd">
  <!-- 此处粘贴你的基础AdSense广告代码,所有分页页通用展示 -->
</div>
<?php
  // 页码≥3时输出额外广告位,需要更多梯度可自行调整判断阈值
  if ($current_pagination >= 3):
?>
<div id="extraAd" class="mt-30">
  <!-- 此处粘贴你要追加的AdSense广告代码,仅3页及以后展示 -->
</div>
<?php
  endif;
endif;
?>

兼容性说明

  • 该判断逻辑兼容WordPress所有官方支持的固定链接结构,不管你的分页格式是/2还是/page/2都可以正常识别,不需要写正则匹配URL
  • 原有代码里if(!is_post_url());末尾多余的分号会导致判断逻辑和后续HTML块解绑,哪怕函数可用也会出现广告乱展示的问题,写PHP判断时要注意这类语法错误
  • 如果需要给更高页码加更多广告位,只需要继续追加if($current_pagination >= 页码数)的判断块即可,不需要修改核心逻辑

内容的提问来源于stack exchange,提问作者ilies dolamove

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 05:24:14