Php 分页在WP_查询()中不起作用
我的分页不适用于Php 分页在WP_查询()中不起作用,php,pagination,wordpress,Php,Pagination,Wordpress,我的分页不适用于WP\u Query() 我一共有三个帖子。第1页正确显示了所有三篇文章。但是第2页显示了相同的三篇文章。事实上,不应该有第2页,因为第1页已经显示了所有三篇文章 有什么不对劲吗 . 在index.php中循环 <?php $query = new WP_Query('cat=1'); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post();
WP\u Query()
我一共有三个帖子。第1页正确显示了所有三篇文章。但是第2页显示了相同的三篇文章。事实上,不应该有第2页,因为第1页已经显示了所有三篇文章
有什么不对劲吗
.在
index.php中循环
<?php
$query = new WP_Query('cat=1');
if ($query->have_posts()) :
while ($query->have_posts()) : $query->the_post();
the_title();
endwhile;
endif;
?>
<?php my_pagination(); ?>
if ( ! function_exists( 'my_pagination' ) ) :
function my_pagination() {
global $wp_query;
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'prev_next' => True,
'total' => $wp_query->max_num_pages
) );
}
主循环中的查询变量是$query
,而分页中的查询变量是$wp\u query
。尝试使用$query
代替$wp\u query
例如:
if ( ! function_exists( 'my_pagination' ) ) :
function my_pagination() {
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'prev_next' => True,
'total' => $query->max_num_pages
) );
}
注意:您的代码似乎缺少endif代码>尝试使用以下代码进行查询:
global $wp_query;
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$wp_query = new WP_Query('cat=1&paged=' . $paged);
if ($wp_query->have_posts()) :
while ($wp_query->have_posts()) : $wp_query->the_post();
the_title();
endwhile;
endif;
my_pagination();
如果仍然不起作用(根据上下文可能会发生这种情况),请尝试替换:
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
与
它不起作用。分页完全消失。我还添加了更多的帖子以查看第2页是否有效,但没有分页以转到下一页。还有什么不对劲?我的主循环有问题吗?它用于显示特定类别的帖子。分页使用的是普通循环。有没有其他方法可以从特定类别中调用帖子?请参阅我对其他帖子的回答。这会解决你所有的问题
$paged = get_query_var('page') ? get_query_var('page') : 1;