“自定义存档”页面不适用于日期或标签,但适用于类别

时间:2019-05-08 12:19:03

标签: php wordpress wordpress-theming

我已经为客户定制了存档页面,并编辑了它进行的查询,以排除类别并将页面限制为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 -->

我提供的是存档页面的查询循环,该页面上除了分页循环外没有其他查询循环,但是它不会影响主循环,我已经对此进行了测试。任何建议或见解均会受到赞赏

2 个答案:

答案 0 :(得分:1)

使用wp_reset_postdata,而不是wp_reset_query()。

答案 1 :(得分:0)

我已经找到了解决自己问题的方法,自定义查询完全覆盖了原始查询中的所有参数。这就是为什么它不起作用的原因。