在Get_Categories中添加多个“Parent”

时间:2013-03-25 作者:Naveen Narale

我使用下面提到的代码从父类别中获取前5个子类别(按帖子数量)。The code works fine, 然而,我需要添加更多的“父”类别,这样我就无法从多个父类别中获得前5个子类别的总数。

Adding \'parent\' => \'599,588,590\',  **Does not work.**

The working code for single parent category.

<?php
$args=array(
  \'orderby\' => \'count\',
  \'order\' => \'DESC\',
  \'parent\' => \'599\',
  \'number\' => \'5\'
  );
$categories=get_categories($args);
  foreach($categories as $category) {
    echo \'<li><a href="\' . get_category_link( $category->term_id ) . \'" title="\' . sprintf( __( "" ), $category->name ) . \'" \' . \'>\' . $category->name.\' (\' . $category->count .\')</a></li>\';
 }
?>

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

你不可能在一个电话里得到它。

相反,可以进行多次调用,然后将每次调用提供给您的数据排序到单个数组中,并在新列表中选择前5位。

e、 g。

$args=array(
  \'orderby\' => \'count\',
  \'order\' => \'DESC\',
  \'parent\' => \'599\',
  \'number\' => \'5\'
  );
$categories=get_categories($args);

$args2=array(
  \'orderby\' => \'count\',
  \'order\' => \'DESC\',
  \'parent\' => \'588\',
  \'number\' => \'5\'
  );
$categories2=get_categories($args2);

// etc...
最后,您将创建一个新数组,用于显示前5个类别。您将通过搜索刚刚获得的5个类别数组,并选择计数最高的类别来填充此数组。。

将每个数组视为前10名,然后在给定5个列表的情况下,您将编译一个新的前10名。你会在所有5个列表中找到最高的类别,然后是下一个,一旦你有了5个项目,你就会停下来写下你的最终列表。

结束