如何在wp POST循环内打印术语名称

时间:2019-11-26 作者:denny

我在一个自定义帖子类型中有3种不同的分类法。我想打印所有带有术语名称的帖子。

例如:

分类法1=>分类法=银行;post\\u类型=信用卡

分类法2=>分类法=联合费用;post\\u类型=信用卡

分类法3=>分类法=卡片类型;post\\u类型=信用卡

因此,我想打印所有带有术语名称的自定义帖子我可以通过输入单个分类法打印数据,但如何使用所有分类法术语打印数据

查询

$custom_terms = get_terms(\'banks\');

foreach($custom_terms as $custom_term) {
wp_reset_query();
$args = array(\'post_type\' => \'creditcards\',
\'tax_query\' => array(
       array(
             \'taxonomy\' => \'banks\',
             \'field\' => \'slug\',
             \'terms\' => $custom_term->slug,
            ),
           ),
);

$loop = new WP_Query($args);
if($loop->have_posts()) {

while($loop->have_posts()) : $loop->the_post();?

<div><?php echo $custom_term->name;?><br><?php echo the_title();?></div>
 <?php endwhile;
       }
       }
?>
我想在post循环中得到的最终结果
taxonomy1 term,taxonomy2 term,taxonomy3 term
the title

taxonomy1 term,taxonomy2 term,taxonomy3 term
the title

taxonomy1 term,taxonomy2 term,taxonomy3 term
the title

1 个回复
SO网友:Hendrik Vlaanderen

您可以使用访问条款this 作用您可以将分类法的名称以及ID传递给函数。确保在循环中正确获取ID-get\\u the\\u ID()应该可以工作。在那之后,就是用逗号分隔连接结果的问题。使用array\\u merge,您还可以添加所需的其他阵列。

  $x_terms = get_the_terms( get_the_ID(), \'any-taxonomy-slug\');
  $y_terms = get_the_terms( get_the_ID(), \'another-taxonomy-slug\');

  $terms = array_merge($x_terms, $y_terms);

  foreach($terms as $term):
     $term_names[] = $term->name;
  endforeach;

  $names = join( ", ", $term_names );

相关推荐

如何解决/调试GET_TERMS突然没有结果?

直到我发现taxonomy-company.php 主题文件已成功生成每个“”的缩进列表company“分类术语的公司族谱。也就是说,company 是一种层次分类法。在术语归档页面上,我们可以看到该公司最重要的父公司,如果有,还可以看到其所有子公司,并在侧边栏中显示完整列表。但它已经变得无赖,原因不明。我将从下面的代码中省略后面的树显示函数,因为目前我推测问题更严重。 /*************************************************************/