我已经为客户定制了存档页面, 并编辑了它进行的查询, 以排除类别并将页面限制为8个帖子。我还添加了一个使用”存档”小部件的侧边栏。每当我单击”存档”链接时, 它将显示所有帖子, 而不显示该月的帖子。标签也会发生相同的情况, 它将返回所有帖子, 而不仅仅是返回带有该标签的帖子。
<div class="row site-module-inner">
<?php $args = array( 'posts_per_page' => 8, 'category__not_in' => get_category_by_slug('news')->term_id, ); ?>); ?>
<?php $query = new WP_Query($args); ?>
<?php $count = $query->post_count;
$counter = $query->post_count;
if ($count % 2 == 0) {
$last = true;
} else {
$last = false;
}
?>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
<div class="item <?php if ((!($last) && $counter == 1) || ($last && $counter <= 2)) { echo " bottom"; } ?> ">
<?php get_template_part( 'template-parts/post', 'listing' ); ?>
</div> <!-- item -->
<?php $counter--; ?>
<?php endwhile; wp_reset_query();?>
</div> <!-- row -->
我提供的是存档页面的查询循环, 该页面上除了分页循环外没有其他查询循环, 但是它不会影响主循环, 我已经对此进行了测试。任何建议或见解表示赞赏
#1
使用wp_reset_postdata, 而不是wp_reset_query()。
#2
我已经找到了解决自己问题的方法, 自定义查询将完全覆盖原始查询中的所有参数。这就是为什么它不起作用的原因。
评论前必须登录!
注册