我已使用以下内容获取购物车中产品的变体ID。
$cartdetails = $woocommerce->cart->get_cart();
foreach($cartdetails as $cart_items) {
$variation_id = $cart_items['variation_id']; //get variation id of product in cart
}
我检查了数组,变体名称不是值。如何从变体ID中获取变体名称?
答案 0 :(得分:8)
您可以在产品对象上使用get_formatted_name()
方法。我相信该对象可能包含在$cart_items
数组中,但我不是100%肯定。如果没有,那么你可以获得产品并使用它。
$variation = wc_get_product($variation_id);
$variation->get_formatted_name();
答案 1 :(得分:1)
我已经对此进行了很多调查,实际上找不到合适的解决方案。我试过这个并且它有效!
myvar1= $('#btn-classified').attr('data');
alert(myvar1);
答案 2 :(得分:0)
您可以通过调用$variation->get_variation_attributes();
方法获取与变体ID对应的原始值。
$variation = wc_get_product($item['variation_id']);
$variation_attributes = $variation->get_variation_attributes();
返回数组$variation_attributes
将包含您需要的相应变体 name 或 value (对我而言,它是鞋子的大小)
答案 3 :(得分:0)
获得变异slug后,请拨打wc_attribute_label()
。
假设您可以访问$product
或其附近:
foreach ($product->get_available_variations() as $variation) {
foreach (wc_get_product($variation['variation_id'])->get_variation_attributes() as $attr) {
echo '<pre>'; var_dump(wc_attribute_label( $attr )); echo '</pre>';
}
}