Идентификатор варианта продукта, который был недавно добавлен в корзину в Woocommerce - PullRequest
0 голосов
/ 11 сентября 2018

Решение 1:

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

Мне сказали, что теперь моя проблема в том, что это не обновляется при использовании ajax add to cart.

пожалуйста, сделайте небольшой тест на моем тестовом веб-сайте: https://bestfh.com/product/pu-leather-multifunctional-car-seat-cover/

Шаг 1: добавьте 4 цвета в сортировке, черный, серый, серый / черный / желто-коричневый цвет в корзину, это сообщение будет возвращенос изображением показывает правильно.

шаг 2: Тогда, тот же продукт, независимо от того, какого цвета вы добавляете в корзину, все равно покажет желтое цветное изображение.


, поскольку решить эту проблему очень сложно.Я пытаюсь использовать другой способ решения этой проблемы:

Solution2:

в 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);
}

в success.php

$product_id = $_COOKIE["newtocart"];

Проблема в том, что сначала запускается success.php, а затем functions.php, всегда один раз.

  • Время 1: я добавил черный цвет, $ product_id показывает пустой.
  • Время 2: я добавил серый цвет, $ product_id показывает идентификатор черного цвета.
  • Время 3: я добавил желто-коричневый цвет, $ product_id показывает идентификатор серого цвета.

Если проблема этого решения 1 не обновляется при использовании ajax добавить в корзину.что я должен делать?

если вы знаете, как правильно настроить решение 2, пожалуйста, дайте мне знать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...