在产品档案中显示特定父类别的子类别?

时间:2016-05-21 14:31:44

标签: php wordpress woocommerce

我创建了一个名为"品牌"的父类别。 - 该类别的ID为" 10"。

在其内部我添加了像#34; Nike" "阿迪达斯"等

在我的产品档案中,我希望显示子类别的名称 仅与父类别"品牌"相关联(ID 10)。

例如:如果产品与" Nike" (谁是"品牌的孩子" - 它会显示" Nike"如果没有 - 什么都不显示。

我已经尝试了流动但没有为我工作:

int *(*(x[3])())[5];

<?php 
$categories = get_the_terms( get_the_ID(), '10' ); 
if ( $categories && ! is_wp_error( $category ) ) : 
    foreach($categories as $category) :
      $children = get_categories( array ('taxonomy' => '10', 'parent' => $category->term_id ));

      if ( count($children) == 0 ) {
          echo $category->name;
      }
    endforeach;
endif;
?>

还有:

<?php
$categories = get_the_terms( get_the_ID(), '10' ); 
if ( $categories && ! is_wp_error( $category ) ) : 
    foreach($categories as $category) :
      $children = get_categories( array ('taxonomy' => '10', 'parent' => $category->term_id ));
      if ( count($children) == 0 ) { ?>
      <span class="product-sub-cats"><?php echo $category->name; ?></span>
      <?php }
    endforeach;
endif; ?>

1 个答案:

答案 0 :(得分:0)

我找到了解决这个问题的方法。

为了实现这一目标,您需要使用: https://codex.wordpress.org/Function_Reference/wp_get_post_terms

这是适合我的代码:

<?php
global $post;
$brands_id = get_term_by('slug', 'PARENT-CAT-SLUG', 'product_cat');

$terms = get_the_terms($post->ID, 'product_cat');
foreach ($terms as $term) {
    if($term->parent === $brands_id->term_id) { ?>
       <span class="product-sub-cats"><?php echo $term->name; ?></span>
      <?php  break;
    }
}
 ?>