如何返回多个分类中的所有术语?

时间:2019-06-12 作者:Matthew Brown aka Lord Matt

我需要为自定义帖子类型生成一组(六个)分类法(自定义标记)中所有术语的排序数组,其中没有任何重复项(可能有很多重复项)。

这是什么get_terms() 可以处理,如果可以,我该如何处理?如果不是,我的最佳方法是6次呼叫get_terms() 后跟一个array_merge?

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

你今天有各种有趣的问题!还有一个WP_Term_Query 在WordPress中提供。这里有一些关于它的信息以及可以传递的参数。https://developer.wordpress.org/reference/classes/WP_Term_Query/__construct/

$term_args = array(
  \'taxonomy\' => array(\'tax_one\', \'tax_two\', \'tax_six\'),
  \'hide_empty\' => false,
  \'fields\' => \'all\',
  \'count\' => true,
);

$term_query = new WP_Term_Query($term_args);

foreach ( $term_query->terms as $term ) {
  // Here is what lives inside of $term when the \'field\' parameter above is set to all
  /*
  WP_Term Object (
      [term_id] => 11
      [name] => General Topics
      [slug] => general-topics
      [term_group] => 0
      [term_taxonomy_id] => 11
      [taxonomy] => category
      [description] => 
      [parent] => 0
      [count] => 22
      [filter] => raw
  )
  */
  // Maybe build out your array() in here to NOT have duplicate Terms ??
}
希望有帮助!!