Elementor搜索结果页Loop Grid的Items Per Page功能失效求助
解决方法
- 修正搜索查询的条数限制:有些主题或插件会通过
pre_get_posts钩子强制修改搜索结果的显示条数,比如设为-1(全部显示)。可以在主题的functions.php文件中添加以下代码,专门针对前台主搜索查询设置每页20条:
add_action('pre_get_posts', function($query) { if (!is_admin() && $query->is_search() && $query->is_main_query()) { $query->set('posts_per_page', 20); } });
确认Current Query的绑定对象:检查Loop Grid的设置,确保「Current Query」指向的是页面的主查询(Main Query),而不是其他自定义查询。如果页面中存在多个查询实例,Loop Grid可能误绑定到了未限制条数的自定义查询上。
更换原生分页函数:如果使用了自定义分页代码,可能无法正确识别Current Query的分页参数。换成WordPress原生的
paginate_links()函数生成分页,确保它基于当前主查询的参数计算分页逻辑。清除缓存测试:缓存插件可能保留了旧的查询结果,导致新的分页设置不生效。先清空页面缓存、对象缓存后再测试搜索结果。
内容的提问来源于stack exchange,提问作者user754314
相关产品推荐
相关产品推荐

