如何从 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 产品属性分类中获取术语?的主要内容,如果未能解决你的问题,请参考以下文章