【问题标题】:How an i get product category name from it's id in woocommerce?我如何从 woocommerce 中的 id 获取产品类别名称?
【发布时间】:2021-05-01 23:28:29
【问题描述】:

我想为我的 wp+woocommerce 网站创建一个简码,它将显示当前产品类别的名称。我通过获取请求从我的 url 中获取类别 ID - 这是一项专业。它看起来像:

function this_product_category_name() {
$cat_id = (int) str_replace('-product_cat', '', $_GET['really_curr_tax']);
// here must be a string to get the $cat_name from $cat_id;
echo $cat_name;
}

add_shortcode( 'this_product_category_name', 'this_product_category_name' );

有什么解决办法?

【问题讨论】:

标签: wordpress woocommerce


【解决方案1】:

使用get_term_by()

function this_product_category_name() {
    $cat_id = (int) str_replace('-product_cat', '', $_GET['really_curr_tax']);
    $product_cat = get_term_by( 'id', $cat_id, 'product_cat' );
    echo $product_cat->name;
}
add_shortcode( 'this_product_category_name', 'this_product_category_name' );

有用的链接

【讨论】:

    【解决方案2】:

    既然您在product category 页面上,那么您可以使用get_queried_object,然后您可以从该对象中获取name,如下所示:

    $cat = get_queried_object();
    
    echo $cat->name;
    
    //or if you want to get its id 
    
    echo $cat->term_id;
    
    //if you want to see the object and what's in it then you could use print_r()
    
    print_r($cat);
    

    如果您正在寻找,请告诉我。

    所以你的代码应该是这样的:

    function this_product_category_name() 
    {
    
      $cat = get_queried_object();
    
      echo $cat->name;
    
    }
    
    add_shortcode( 'this_product_category_name', 'this_product_category_name' );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      • 2016-01-09
      • 2018-07-09
      • 1970-01-01
      • 1970-01-01
      • 2015-03-19
      • 2016-12-05
      相关资源
      最近更新 更多