如何从 WooCommerce 产品属性分类中获取术语?

Posted

技术标签:

【中文标题】如何从 WooCommerce 产品属性分类中获取术语?【英文标题】:How to get the terms from WooCommerce product attribute taxonomies? 【发布时间】:2021-05-22 21:23:52 【问题描述】:

使用以下代码,我通过函数(在我的主题的functions.php 中),在我添加的管理产品页面中填充了一个选择下拉项。例如,我设法获得了我所有产品属性的列表(分类)

<?php               
    $attributes =  wc_get_attribute_taxonomies();
    if($attributes) 
        foreach ( $attributes as $attribute ) 
            echo '<option value="'. $attribute->attribute_id .'">' . $attribute->attribute_label . '</option>';
        
                   
?>  

知道如何获取特定产品属性 (taxanomy) 下所有术语的术语名称(标签)和 ID,例如 pa_test

【问题讨论】:

【参考方案1】:

您可以使用function get_terms()获取我们产品属性分类的所有条款,如下所示(此处为产品属性pa_test分类)

$taxonomy = 'pa_test';
$terms    = get_terms( array('taxonomy' => $taxonomy, 'hide_empty' => false) );

// Loop through the terms for 'pa_test' taxonomy
foreach ( $terms as $term ) 
    $term_name = $term->name; // name
    $term_slug = $term->slug; // slug
    $term_id   = $term->term_id; // Id
    $term_link = get_term_link( $term ); // Link

【讨论】:

您好,感谢您的快速回复。不幸的是,它只显示了 41 个术语中的 9 个……我不知道为什么。从来没见过这样的…… @evavienna 已更新,现在应该显示所有术语。无论如何,这是获取自定义分类术语的方法,每个产品属性都是自定义分类。 好的,找到问题了。我认为我们应该将 show empty 变为 false 以显示所有条款。任何想法如何解决(这是一个愚蠢的问题 - 你当然知道):) 感谢您的帮助 哎呀 - 迟到了 28 秒 :)

以上是关于如何从 WooCommerce 产品属性分类中获取术语?的主要内容,如果未能解决你的问题,请参考以下文章

获取 WooCommerce 中没有特定分类的产品列表

获取WooCommerce中没有特定分类的产品列表

显示 WooCommerce 产品属性的自定义分类术语图像

WooCommerce 如何在前端获取产品属性的干净标签

如何从 woocommerce 产品中获取描述?

获取 WooCommerce 中的所有产品类别