Oxygen Builder搭建首页时Infinite scrolling无限滚动重复加载第一页求助
这个问题是WordPress静态首页的分页参数规则与Oxygen Builder动态列表的默认分页查询逻辑不匹配导致的,和你用的无限滚动工具本身无关,修复方案如下:
修复步骤
1. 修正Oxygen动态列表的分页查询参数
WordPress 静态首页默认使用page作为分页查询变量,而非常规内页的paged变量,Oxygen动态列表默认读取paged参数,就会永远识别为第一页,导致返回内容重复:
- 打开该首页的Oxygen编辑器,定位到你使用的repeater/动态列表组件
- 进入「查询」设置面板,切换为自定义查询,不要使用默认的全局查询
- 在高级查询参数中插入如下PHP代码,适配静态首页的分页规则:
$paged = (get_query_var('page')) ? get_query_var('page') : 1; return [ 'post_type' => 'post', // 替换为你自己的文章类型 'posts_per_page' => 10, // 替换为你自己的每页展示数量 'paged' => $paged ];
2. 优化无限滚动JS配置
你当前配置的path: '.next'依赖DOM中的下一页按钮元素,首页分页导航容易出现链接生成错误的问题,直接指定分页路径模板更稳定,替换你的JS代码为如下内容:
<script src="https://unpkg.com/infinite-scroll@4/dist/infinite-scroll.pkgd.min.js"></script> <script> setTimeout(() => { (function($) { $('#_dynamic_list-3-227.oxy-dynamic-list').infiniteScroll({ path: '/page/{{#}}', // 若你的站点分页路径规则不同,替换为对应模板即可 append: '.infinite-scroll', history: false, hideNav: '.oxy-repeater-pages', }); })(jQuery); }, 500) </script>
3. 刷新站点规则与缓存
- 进入WordPress后台「设置」->「固定链接」,直接点击「保存更改」,刷新重写规则,无需修改现有配置
- 清空Oxygen缓存:后台「Oxygen」->「设置」->「缓存」->「清空所有缓存」,同时清空站点缓存插件、CDN的缓存后,用无痕模式测试功能即可。
注意:不要同时开启自定义JS无限滚动与Yith Infinite Scrolling插件,避免功能冲突。
内容的提问来源于stack exchange,提问作者Bruno Bros
相关产品推荐
相关产品推荐

