最近在Woocommerce中添加到购物车中的产品版本ID

时间:2018-09-11 20:30:05

标签: php wordpress woocommerce cart

解决方案1:

$items = WC()->cart->get_cart();
$product_id = end($items)['variation_id'];

有人告诉我,现在可能是我的问题是,当使用ajax添加到购物车时,它没有刷新。

请在我的测试网站上进行一些测试:https://bestfh.com/product/pu-leather-multifunctional-car-seat-cover/

第1步:将4种颜色(黑色,灰色,灰色/黑色/棕褐色)添加到购物车中,它返回带有正确显示图片的消息。

第2步:然后,无论您添加到购物车的哪种颜色,相同的产品仍会显示棕褐色彩色图片。


因为用这种方法很难解决问题。我尝试使用其他方式解决此问题:

解决方案2:

在functions.php中

add_action( 'woocommerce_add_cart_item_data', 'woo_custom_add_to_cart',10,3 );

function woo_custom_add_to_cart( $cart_item_data,$productId, $variation_id ) {

   setcookie("newtocart", $variation_id);
}

inuccess.php

$product_id = $_COOKIE["newtocart"];

问题是:似乎先运行success.php,然后运行functions.php,这总是迟到一次。

  • 时间1:我添加了黑色,$ product_id显示为空。
  • 时间2:我添加了灰色,$ product_id将显示黑色的ID。
  • 时间3:我添加了棕褐色,$ product_id将显示灰色的ID。

如果使用ajax添加到购物车时未刷新此解决方案1的问题。我该怎么办?

如果您知道如何使解决方案2正常工作,请告诉我

0 个答案:

没有答案