php - 使用 get_the_terms() 不会返回应用于 WooCommerce 产品的特定父类别的子条款

标签 php wordpress woocommerce product taxonomy-terms

经过多次尝试和大约 50 篇文章后,我得出的结论是,这是不可能的,除非有一个巫师愿意从他们的咒语书中撕下我的一页。

在产品页面上时,我希望获取当前产品 ID 并将其传递给 get_the_terms() 函数,同时提供分类法“product_cat”并最终指定父类别。

在我们传递的父类别中,仅选择了一个子类别。所以这应该只返回一项。

我想做这样的事情:

$terms = get_the_terms( the_ID(), 'product_cat', array( 'parent' => 84 ) );
foreach ($terms as $term) {
    $termID = $term->term_id;
    $name   = $term->name;
    $slug   = $term->slug;

    echo $name;
}

然而,这会返回大量结果,我尝试了很多其他类似的查询,但这很容易是最美丽的,如果有人可以阐明一些,那就太好了!

最佳答案

简单get_the_terms()不允许额外的参数,而是使用 wp_get_post_terms()而且你应该使用 get_the_ID()而不是the_ID()喜欢

$terms = wp_get_post_terms( get_the_id(), 'product_cat', array( 'parent' => 84 ) );

现在应该可以更好地工作了。

关于php - 使用 get_the_terms() 不会返回应用于 WooCommerce 产品的特定父类别的子条款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65907557/

相关文章:

php - 尽管 Laravel 中的 token 正确,Ajax 调用仍返回 419 错误

javascript - Ajax post 带有参数数组,然后在 PHP 中引用

simplexml - PHP simplexml 实体

wordpress - Lando 无法从我系统上的非 Lando 应用程序访问 URL

javascript - 如何从父类别中排除特定子类别帖子?

php - 如何组合这两个 Wordpress 搜索查询?

javascript - 如何在将产品添加到购物车之前禁用 “view cart” btn?

javascript - 如何向 morris.js 圆环图图例添加数字?

css - 将 WordPress 的 parse_request 函数用于动态 CSS

php - 如何消除 WooCommerce 商店中产品类别之间的差距?