WordPress分页异常:page/3调用index模板且无内容
问题分析与解决方案
你的问题核心是第三页分页链接触发了404错误,导致WordPress fallback到index模板加载,同时错误的URL让自定义查询无法获取正确的分页参数,最终无内容显示。以下是具体修复步骤:
1. 修复分页链接的base参数
原代码中paginate_links的base参数手动拼接URL容易出错,改用WordPress标准占位符方式生成正确的分页链接结构:
echo paginate_links(array( 'base' => str_replace(999999999, '%#%', esc_url(get_pagenum_link(999999999))), 'format' => '/page/%#%', 'current' => $current_page, 'total' => $total_pages, 'prev_text' => __('« prev'), 'next_text' => __('next »'), ));
用999999999作为临时占位符,让WordPress自动替换为正确的分页格式,避免URL拼接错误。
2. 兼容paged和page参数
部分页面场景下WordPress会用page而非paged作为分页参数,修改参数获取逻辑兼容两种情况:
$paged = (get_query_var('paged')) ? get_query_var('paged') : (get_query_var('page') ? get_query_var('page') : 1);
3. 刷新固定链接重写规则
登录WordPress后台,进入设置 → 固定链接,直接点击「保存更改」(无需修改设置),强制刷新重写规则,确保/page/%#%格式的分页链接能被正确解析。
4. 优化自定义查询规范
- 添加
ignore_sticky_posts参数避免置顶产品干扰分页计数 - 改用WordPress标准循环写法替代直接遍历
posts数组,减少全局变量冲突
完整修改后的代码
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : (get_query_var('page') ? get_query_var('page') : 1); $category_id = "clothing"; $args = array( 'post_type' => 'product', 'posts_per_page' => 6, 'post_status' => 'publish', 'suppress_filters' => false, 'paged' => $paged, 'ignore_sticky_posts' => true, 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'terms' => $category_id, 'field' => 'slug' ), ), ); $products_query = new WP_Query($args); $total_pages = $products_query->max_num_pages; if($products_query->have_posts()){ while($products_query->have_posts()){ $products_query->the_post(); $product = wc_get_product(get_the_ID()); echo get_the_title(); echo get_the_post_thumbnail(); echo $product->get_price(); echo get_the_permalink(); } } if ($total_pages > 1) : $current_page = max(1, $paged); echo paginate_links(array( 'base' => str_replace(999999999, '%#%', esc_url(get_pagenum_link(999999999))), 'format' => '/page/%#%', 'current' => $current_page, 'total' => $total_pages, 'prev_text' => __('« prev'), 'next_text' => __('next »'), )); endif; wp_reset_postdata(); ?>
内容的提问来源于stack exchange,提问作者krishk varma
相关产品推荐
相关产品推荐

