【发布时间】:2020-01-16 18:26:46
【问题描述】:
我设置了一个查询来列出按某个自定义字段排序的帖子(这是我博客中评论的各个书籍的发布日期)。
$the_query = new WP_Query(array(
'post_type' => 'book',
'posts_per_page' => 10,
'meta_key' => 'book_release_date',
'meta_type' => 'NUMERIC',
'orderby' => 'meta_value',
'order' => 'DESC'
));
然后我这样称呼它:
<?php if( $the_query->have_posts() ): ?>
<?php if (is_category()) { ?>
<div class="page-title" align="center">
<h2 class="page-title-border">
<?php _e(' Books:'); ?>
<?php echo single_cat_title(); ?> (<?php echo $wp_query->found_posts; ?>)
</h2>
</div>
<?php } ?><?php while( $the_query->have_posts() ) : $the_query->the_post(); ?>
有一个问题:主页显示帖子基于上次发布的书籍顺序,但是每个类别,研究等现在总是显示为最后发布的书籍的结果,而不考虑请求的类别或用于研究的关键字。
为什么会这样?
奇怪的是,如果我在上面的最新行之后添加<?php wp_reset_query(); ?>,它会正确显示正确的结果,但第一个结果显示 10 倍,始终相同。
【问题讨论】: