मैं वर्तमान में WooCommerce के साथ एक वेब शॉप बना रहा हूं और मेरे पास यह कार्ट बनाया गया है कि आप किसी भी समय किसी भी पृष्ठ पर पहुंच सकते हैं, आप कार्ट के भीतर किसी उत्पाद की मात्रा को अपडेट कर सकते हैं। समस्या तब होती है जब भी मैं ऐसा करता हूं तो कुछ मूल्य गड़बड़ हो जाते हैं। उदाहरण के लिए जब मैं यह रिटर्न 0.WooCommerce AJAX अद्यतन मानों को गड़बड़ाना
लेकिन जब मैं चेकआउट पृष्ठ पर जाने के यह सब सही गाड़ी आंकड़ों से पता चलता WC()->cart->total
प्राप्त करने की कोशिश, तो यह मुझे लगता है कि मैं कुछ action
मैं कुछ समायोजन करने के बाद चलाने के लिए है याद कर रहा हूँ बनाता है गाड़ी में मैं set_quantity()
फ़ंक्शंस को देख रहा हूं और यह $this->calculate_totals();
के साथ स्वचालित रूप से रीफ्रेश करता है (इसे मैन्युअल रूप से भी आजमाया गया है)।
अजाक्स समारोह: इस संशोधित ajax समारोह
public function set_quantity($direction = false, $product_id) {
$response = array();
$justOne = false;
if($_GET['data']['direction'] && $_GET['data']['product_id']) {
$direction = $_GET['data']['direction'];
$product_id = $_GET['data']['product_id'];
$justOne = true;
}
foreach (WC()->cart->get_cart() as $cart_item_key => $values) {
$_product = $values['data'];
if ($product_id == $_product->id) {
if($justOne && $direction == 'minus') {
WC()->cart->set_quantity($cart_item_key, $values['quantity'] - 1, true);
$response['success']['quantity'] = $values['quantity'] - 1;
} else if($justOne && $direction == 'plus') {
WC()->cart->set_quantity($cart_item_key, $values['quantity'] + 1, true);
$response['success']['quantity'] = $values['quantity'] + 1;
} else {
WC()->cart->set_quantity($cart_item_key, $values['quantity'] + $direction, true);
}
$response['success']['line_total'] = '€ '.number_format((float)$response['success']['quantity'] * $_product->price, 2, '.', '');
$response['success']['cart_count'] = WC()->cart->get_cart_contents_count();
$response['success']['total'] = number_format((float)WC()->cart->total, 2, '.', '');
die(json_encode($response));
}
}
return false;
}
आप इस प्रक्रिया $ का प्रयास किया woocommerce-> cart-> get_total(); डब्ल्यूसी() -> कार्ट-> get_total(); ? – Gopalakrishnan
आप इस फ़ंक्शन को कब और कैसे कॉल कर रहे हैं? – Reigel
@ गोपालकृष्णन मुझे लगता है कि मैंने कोशिश की है कि मुझे याद नहीं किया जा सकता है जब मेरे पास समय होगा, आपके उत्तर के लिए धन्यवाद – LVDM