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;