【问题标题】:Pagination not working with WP_query分页不适用于 WP_query
【发布时间】:2018-10-14 07:29:34
【问题描述】:

我正在尝试列出“阿尔卑斯山”类别中的帖子。问题是,如果我定义 'posts_per_page'=> -1,效果很好,我会得到完整的列表,但如果我要求一些帖子,我只会得到相同的帖子,一页又一页地重复。这是我的 loop-alps.php 文件。

<?php
$args = array(

'order' => 'asc',
'order_by' => 'title',
'posts_per_page'=> 5, 
'category_name'=> 'alps'
);

$wp_query = new WP_Query($args);

if($wp_query->have_posts()): while($wp_query->have_posts()): $wp_query->the_post();
echo '<h1>' .get_the_title() .'</h1>';
the_post_thumbnail();
endwhile;

endif;
?>



<div class="navigation">
<?php if(function_exists('tw_pagination')) tw_pagination($the_query); ?>
</div>

【问题讨论】:

标签: php loops pagination wordpress


【解决方案1】:

根据 WP 文档 (Codex),您似乎应该使用 paged 参数以使其正常工作。

$args = array(

'order' => 'asc',
'order_by' => 'title',
'posts_per_page'=> 5, 
'category_name'=> 'alps',
'paged' => get_query_var( 'paged' )
);

get_query_var( 'paged' ) - 这个函数基本上是在 URL 中寻找一个 GET 变量,如果我没记错的话,'?paged=X'。因此,请确保通过单击分页链接,您可以看到此参数已添加到 URL 并正在相应更改。

来源:https://codex.wordpress.org/Class_Reference/WP_Query#Pagination_Parameters

【讨论】:

  • 不客气。如果我的回答对您有帮助,请考虑点赞和批准。
  • 谢谢!这是我在自定义存档布局的页面模板上使用wp_query 进行分页所需要的,我完全忘记了参数中的paged
【解决方案2】:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(

'order' => 'asc',
'order_by' => 'title',
'posts_per_page' => 12,
'category_name' => 'alps',
'paged' => $paged,
'offset'=> 1
);

【讨论】:

  • 抱歉,新手想了解评论系统!上面的代码有效,感谢您指出正确的方向。
【解决方案3】:

这样加'paged' =&gt; get_query_var( 'paged' ),就行了,自己调整一下

<?php
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
$myposts = array(
    'showposts' => 6,
    'post_type' => 'your-post-type',
    'orderby' => 'date',
    'paged' => get_query_var( 'paged' ),
    'tax_query' => array(
        array(
        'taxonomy' => 'your-taxonomy',
        'field' => 'slug',
        'terms' => 'your-terms')
    )
);
$wp_query= null;
$wp_query = new WP_Query();
$wp_query->query($myposts);
?>

【讨论】:

  • 你的 $paged 变量在你的代码中是没有意义的,它没有被使用。然后稍后您使用 get_query_var( 'paged' ) ,它甚至与您之前的 $paged 变量不同。
猜你喜欢
  • 2013-01-20
  • 2020-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多