我想获得Woocommerce变量产品变体名称。例如,如果我有一种不同尺寸的产品:小型、中型和大型。然后我想打印例如“大”。我已经快成功了。问题是,我同时也得到了产品名称,比如:“product name-Large”,这是我的代码:
$product_variation = wc_get_product($variation[\'variation_id\']);
$product_variation->get_name()
希望有人能帮忙,谢谢。:-)
我想获得Woocommerce变量产品变体名称。例如,如果我有一种不同尺寸的产品:小型、中型和大型。然后我想打印例如“大”。我已经快成功了。问题是,我同时也得到了产品名称,比如:“product name-Large”,这是我的代码:
$product_variation = wc_get_product($variation[\'variation_id\']);
$product_variation->get_name()
希望有人能帮忙,谢谢。:-)
我已经测试了下面的代码,它可以正确地用于变体名称
$variationId = 39;
$variation = new WC_Product_Variation($variationId);
$variationName = implode(" / ", $variation->get_variation_attributes());
echo $variationName;
使用get_varation()
方法如果属性是全局属性,它将正确地从属性的分类术语中获取名称,如果不是,它将返回存储在产品中的值。
$product_variation = wc_get_product( $variation[\'variation_id\'] );
echo $product_variation->get_attribute( \'size\' );
我认为这应该很好:
$string = WC_Product_Variation::get_formatted_name();
参考号:https://woocommerce.wp-a2z.org/oik_api/wc_product_variationget_formatted_name/在这里使用这个你可以得到变体名称
$productId = 1; //product id here
$handle = new WC_Product_Variable($productId);
$variationData = $handle->get_children();
foreach ($variationData as $value) {
$variation_id = $value;
$single_variation = new WC_Product_Variation($value);
$var_slug = $single_variation->slug;
echo "<br/>".$name = implode(" / ", $single_variation->get_variation_attributes());//here you get product name
}
请尝试以下代码。它将根据变量id输出属性大小的变量名称。
$variation = wc_get_product($variation[\'variation_id\']);
$variation_attributes = $variation->get_variation_attributes();
$variation_name = ucfirst($variation_attributes[\'attribute_pa_size\']);
echo $variation_name;
如果这对你有用,请告诉我。