कस्टम लिंक से कार्ट में कार्टेज जोड़ें


15

मैं एक लिंक के माध्यम से सीधे अपनी कार्ट में एक भिन्नता वाला उत्पाद जोड़ने की कोशिश कर रहा हूं। मैं क्वेरी स्ट्रिंग के साथ वेरिएशन_ड सेट कर रहा हूं। जहां तक ​​मैं बता सकता हूं मैं डेटा को ठीक उसी तरह भेज रहा हूं जैसे कि डिफ़ॉल्ट भिन्नता उत्पाद रूप में होता है।

यहां मेरे एकल-उत्पाद पृष्ठ के अंदर कोड दिया गया है:

<a href="<?php echo esc_url( $product->add_to_cart_url() ); ?>&variation_id=262" class="rounded-rect-button add-to-cart">Add to Cart</a>

इसके विपरीत, साधारण उत्पाद ठीक काम करता है। मैंने व्यवस्थापक में अपने उत्पाद रूपांतरों के लिए मूल्य निर्धारित किए हैं। निश्चित नहीं है कि यह डेटा भेजने में उतना सरल क्यों नहीं है। किसी भी मदद की बहुत सराहना की जाएगी।

जवाबों:


10

वर्तमान में मैं एक woocommerce v2.1.12 दुकान पर काम करता हूं और ऐसा लगता है कि उन्होंने उस व्यवहार का पीछा किया।

कार्ट में आइटम जोड़ने के लिए मेरे ajax यूआरएल को इस तरह दिखना है:

?add-to-cart=[PRODUCT-ID]&variation_id=[VARIATION-ID]&attribute_[ATTRIBUTE-NAME]=[ATTRIBUTE-SLUG]&attribute_[ATTRIBUTE-NAME]=[ATTRIBUTE-SLUG]

उदाहरण:

http://example.com/store/category/product/?add-to-cart=239&variation_id=240&attribute_pa_size=48-2&attribute_pa_color=gold

यह कार्ट में एक विशिष्ट उत्पाद जोड़ता है और कार्ट में विविधता विशेषताओं को भी सेट करता है। आप बस जोड़कर भी मात्रा निर्धारित कर सकते हैं&quantity=[VALUE]

अंत में यह काम आता है क्योंकि ये सभी मान सबमिट फॉर्म / सेलेक्ट फील्ड के अंदर सेट किए जाते हैं, आपको बस उन चीजों को देखना है।


2
त्वरित नोट - उचित विशेषता नाम के लिए भिन्नताओं का चयन करें फ़ील्ड का निरीक्षण करें। यह आम तौर पर हाइफ़न का उपयोग करता है, इसलिए आपको यह मिलता है: & attribute_my-attribute-name = value
इम्पीरियल आइडियाज

9

यह एक बाहर लगा। मुझे अपनी गाड़ी में एक चर उत्पाद जोड़ने के लिए आवश्यक कुछ मापदंडों की कमी थी। अनुपलब्ध पारम variation_idऔर विशेषता प्रकार हैं जो variation_idसंदर्भित है। विविधता आईडी को व्यवस्थापक> woocomerce> उत्पादों में और आपके द्वारा बनाए गए उत्पाद भिन्नता के बगल में भिन्नता टैब के अंतर्गत पाया जा सकता है।

गुण परम का गठन उपसर्ग attribute_और फिर स्वच्छता विशेषता नाम से हुआ है। उदाहरण के लिए, मेरी विशेषता को स्टॉक कलर्स कहा जाता है, इसलिए मेरा विशेषता प्रकार परम है, जो है__स्टॉक-कलर्स। मैं जो बता सकता हूं, आप सिर्फ attribute_stock-colors=1इसलिए सेट करते हैं क्योंकि कार्ट विधि में जोड़ें बस यह देखने के लिए जांचें कि क्या यह मौजूद है।

यहां एक लिंक का एक सरल उदाहरण है जो स्टॉक कार्ट के 261 की भिन्नता आईडी के साथ मेरी कार्ट में एक उत्पाद जोड़ता है:

<a href="<?php echo esc_url( $product->add_to_cart_url() ); ?>&variation_id=261&attribute_stock-colors=1">Add to Cart</a>

वास्तविक स्थिति में इसका उपयोग करने के लिए, आपको विशेषता प्रकार और भिन्नता आईडी को गतिशील रूप से उन विकल्पों से सेट करना होगा, जिन्हें उपयोगकर्ता ने ड्रॉप डाउन या कुछ इस तरह से चुना है (जब तक कि प्रत्येक उत्पाद में एक ही भिन्नता न हो, जो मूल रूप से इसे एक simpel उत्पाद बना देगा। )।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.