Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在Wordpress中将子帖子从父类别中排除?_Php_Wordpress - Fatal编程技术网

Php 如何在Wordpress中将子帖子从父类别中排除?

Php 如何在Wordpress中将子帖子从父类别中排除?,php,wordpress,Php,Wordpress,我创建了类别A,然后是类别B和C,它们都是A的子类别。当我访问类别A时,所有属于该类别的帖子都会列出,但它也会显示所有属于B类和C类的职位,即使这些职位没有分配到A类。是否可以只显示A类职位,并将所有职位排除在B类和C类职位之外?我看到了很多答案,但大多数都是旧的,我不确定它们是否适用于当前版本。另外,我才刚刚开始,虽然我已经看到了很多关于如何克服这个问题的例子,但我很难确定应该在哪里进行更改。 你能告诉我为了实现这一目标,我需要在哪里以及做什么改变吗? 提前感谢你的帮助 更新 我是新来的,还不

我创建了类别A,然后是类别B和C,它们都是A的子类别。当我访问类别A时,所有属于该类别的帖子都会列出,但它也会显示所有属于B类和C类的职位,即使这些职位没有分配到A类。是否可以只显示A类职位,并将所有职位排除在B类和C类职位之外?我看到了很多答案,但大多数都是旧的,我不确定它们是否适用于当前版本。另外,我才刚刚开始,虽然我已经看到了很多关于如何克服这个问题的例子,但我很难确定应该在哪里进行更改。
你能告诉我为了实现这一目标,我需要在哪里以及做什么改变吗? 提前感谢你的帮助

更新

我是新来的,还不能回答自己的问题。但我想与大家分享我发现的能帮助其他人解决同样问题的方法。只需将它放在循环之前的代码中

  <?php 
      if ( is_category() ) {
      $cat = get_query_var('cat');
      query_posts(array('category__in' => array($cat)));
      }?>


感谢大家的时间和帮助。

获取帖子数据时,必须指定帖子的类别id。我想这可能会对您有所帮助。

在category.php页面中,将此代码放在循环之前

<?php

if ( have_post() ) {
        if (is_category()){
         $category = get_category(get_query_var('cat'));
         $child_cats = array();
     $child_cats = get_term_children($category, 'category');
     query_posts(array('category__not_in' => $child_cats);
         }
   }


 while (have_posts()) : the_post(); $postcount++; ?>

谢谢你的帮助。我已经尝试过这个代码,但它不是我想要的。相反,它在子页面下显示来自父类别的帖子。我可能做错了什么,但我不知道是什么。又是坦斯克。