मैगेंटो के नवीनतम संस्करण में अपग्रेड करने के बाद से, मैंने देखा कि चेकआउट पृष्ठ पर एक नई प्रविष्टि दिखाई गई है जो ग्राहकों के मध्य नाम / प्रारंभिक के लिए पूछ रही है।
मैं चेकआउट पृष्ठ से "मध्य नाम / प्रारंभिक" प्रविष्टि कैसे निकालूं?
मैगेंटो के नवीनतम संस्करण में अपग्रेड करने के बाद से, मैंने देखा कि चेकआउट पृष्ठ पर एक नई प्रविष्टि दिखाई गई है जो ग्राहकों के मध्य नाम / प्रारंभिक के लिए पूछ रही है।
मैं चेकआउट पृष्ठ से "मध्य नाम / प्रारंभिक" प्रविष्टि कैसे निकालूं?
जवाबों:
मैं एक ही मुद्दा था जब Magento CE 1.9.2.1 से Magento CE 1.9.2.1 को अद्यतन कर रहा था । अद्यतन के कारण मध्य नाम प्रदर्शित होता है, लेकिन जब मैंने System > Configuration > Customers > Customer Configuration > Name and Address Options
"मध्य दृश्य दिखाएं (प्रारंभिक)" व्यवस्थापक की जाँच की तो सेटिंग पहले से ही "नहीं" प्रदर्शित कर रही थी - जो कि मैं चाहता था। मैंने सेटिंग को "हां" में बदल दिया और फिर "सेव कॉन्फिग" पर क्लिक करने से पहले "नहीं" पर वापस आ गया, और जब मैंने पेज रिफ्रेश किया तो इसने तुरंत मध्य नाम / चेकआउट से हटा दिया।
मेरे मामले में, मैं Magento 1.8.x से Magento 1.9.x पर एक स्टोर को अपडेट करने पर काम कर रहा हूं। यह मेरे विकास के माहौल में है जिसे मैंने 1.9.2.0 से 1.9.2.1 तक अपडेट किया। जब हम 1.8.x से 1.9.x पर अपग्रेड लॉन्च करते हैं, तो हमें लाइव साइट अप-टू-डेट प्राप्त करने के लिए, हमें कई एडमिन सेटिंग्स को अपडेट करना होगा, जिसे हम डेटाबेस में सीधे क्वेरी के साथ करने की योजना बनाते हैं। डेटाबेस में, आप देख सकते हैं कि Magento मध्य नाम सेटिंग को कैसे बदलता है।
तालिका `core_config_data` रिकॉर्ड के साथ" मध्य नाम दिखाएँ (प्रारंभिक) के लिए सेटिंग की व्यवस्था करती है जहाँ `core_config_data`.`path`='customer/address/middlename_show'
।
यह रिकॉर्ड `मान` क्षेत्र (0 =" नहीं ", 1 =" हाँ ") में सेटिंग रखता है। जब Magento CE 1.9.2.1 में अपग्रेड करके मध्य नाम प्रकट होता है, तो इस फ़ील्ड को बदला नहीं जाता है । यदि आप मैगेंटो के 1.9.2.1 को अपडेट के दौरान परिवर्तन करने के बाद व्यवस्थापक सेटिंग्स में "शो मिडिल नेम (प्रारंभिक)" में परिवर्तन सहेजते हैं, तो यह यहां 'core_config_data' मान को बदल देगा।
1.9.2.1 के अपडेट ने `core_config_data` पर रिकॉर्ड नहीं बदला, और इसलिए व्यवस्थापक सेटिंग्स में प्रदर्शित किया गया है। लेकिन, अपडेट एक अलग तालिका के एक अलग रिकॉर्ड को बदल देता है।
मैगेंटो के मेरे कई देव उदाहरणों में, तालिका `ev_attribute` का 2" मध्य नाम "` विशेषता_कोड` (s), `विशेषता_आईडी` (s) 6 और 21 है । `Customer_eav_attribute` तालिका एक क्षेत्र` is_visible` साथ विशेषता की दृश्यता तय करता है।
`is_visible` = 0
। `is_visible` = 1
।`is_visible`=0
फिर से और मिडिल नेम / इनिशियल फील्ड चेकआउट से गायब हो गया।Magento सीई 1.9.2.1 अद्यतन क्या "शो मध्य नाम (प्रारंभिक)" सेटिंग के तहत Magento व्यवस्थापक में प्रदर्शित किया जाता है को प्रभावित किए बिना `customer_eav_attribute` तालिका में फ़्लिप मध्य नाम सेटिंग। आप इसे उस तरह से ठीक कर सकते हैं जिस तरह से "सामान्य रूप से दिखाएँ मध्य नाम (प्रारंभिक)" सेटिंग को टॉगल करके, दूरगामी टेम्पलेट समायोजन किए बिना, सामान्य रूप से सेटिंग को व्यवस्थापक में समायोजित कर दिया जाता है।
यदि किसी कारण से आपको इस व्यवस्थापक सेटिंग को किसी स्टोर की कई प्रतियों में, या व्यवस्थापक अद्यतनों के एक बैच में स्थानांतरित करना होगा, जैसे कि देव माहौल से मेल खाने के लिए किसी स्टोर को अपग्रेड करते समय ... आप इस सेटिंग के लिए निम्न SQL कथन का उपयोग कर सकते हैं ( बशर्ते आपको पता हो कि "मिडल नेम" आपके स्टोर में `एट्रिब्यूशन_ 6 'और 21 है। यह मैगेंटो के लिए मानक है, लेकिन सुरक्षित रहने के लिए, अपने` ईव_ट्रेड्रा `टेबल को पहले दोहराएं।)।
UPDATE customer_eav_attribute SET is_visible = 0 WHERE attribute_id IN (6, 21);
सिस्टम कॉन्फ़िगरेशन विकल्प को बैकएंड मॉडल ( Mage_Adminhtml_Model_System_Config_Backend_Customer_Show_Customer
) मिला है, जिसकी _afterSave
विधि ग्राहक EAV विशेषता (तालिका:) में समान परिवर्तन करती है customer_eav_attribute
।
सिस्टम कॉन्फ़िगरेशन विकल्प मान और EAV विशेषता is_visible
मान आवश्यक रूप से सिंक में नहीं हो सकता है (या तो Magento के उन्नयन के कारण, या यदि कॉन्फ़िगरेशन विकल्प प्रोग्रामेटिक रूप से, या किसी अन्य कारण से बदला गया था)।
स्विच को एक-दो बार फ़्लिप करने से यह ठीक हो जाएगा, या, यदि आप मेरे जैसे हैं और हर चीज़ के लिए इंस्टॉल / अपग्रेड स्क्रिप्ट का उपयोग कर सकते हैं, तो आप निम्न कर सकते हैं:
Mage::getModel('core/config')
->saveConfig('customer/address/middlename_show', 0);
try {
$attribute = Mage::getSingleton('eav/config')
->getAttribute('customer', 'middlename')
->setIsVisible(0)
->save();
$attribute = Mage::getSingleton('eav/config')
->getAttribute('customer_address', 'middlename')
->setIsVisible(0)
->save();
} catch (Exception $e) {
Mage::logException($e);
throw $e;
}
$attribute = Mage::getSingleton('eav/config') ->getAttribute('customer_address', 'middlename') ->setIsVisible(0) ->save();
सबसे आसान तरीका:
Magento ver। 1.9.2.1
System > Configuration > Customers > Customer configuration > Name and Address Options
Show Middle Name (initial)
= No
निकाला जा रहा है {{depend middlename}}{{var middlename}}
@sr_magento की तरह वास्तव में अपने जवाब में पता चलता है हटाने को दूर नहीं करताShow Middle Name (initial)
चेकआउट पृष्ठ से ही क्षेत्र। यह केवल उन क्षेत्रों से इसे हटाता है जहां ग्राहक पता जानकारी प्रदान / मुद्रित की जाती है, जैसे व्यवस्थापक क्षेत्र, पीडीएफ और ईमेल टेम्पलेट।
ईमेल टेम्प्लेट से फ़ील्ड हटाने की कोई आवश्यकता नहीं है। यह ओवरकिल है और आपको उन प्रविष्टियों को ईमेल टेम्प्लेट में फिर से जोड़ना होगा, यदि आप इसे सक्षम करने का निर्णय लेते हैंShow Middle Name(initial)
भविष्य में इसे होगा।
मैंने इस गड़बड़ को भी देखा है, Magento CE 1.9.2.0 से Magento CE 1.9.2.1 को अपडेट करने के बाद Magento डाउनलोडर का उपयोग करके। अद्यतन के Show Middle Name (initial)
तहत सेटिंग को समायोजित करने के लिए लगता है
System > Configuration > Customers > Customer Configuration > Name and Address Options
से "नहीं" के लिए "हाँ" । यह विभिन्न सर्वरों पर कई दुकानों में मेरे साथ हुआ।
इसे पूर्ववत करने के लिए बस इसे "नहीं" पर वापस सेट करें और कॉन्फ़िगरेशन को सहेजें। Show Middle Name (initial)
फ़ील्ड अब चेकआउट पृष्ठ पर प्रदर्शित किया जाएगा।
Address Templates
आप का सुझाव दे दुकान के दृश्यपटल में चेकआउट पृष्ठ इनपुट फ़ील्ड नहीं बदलता है। यह केवल पतों के मुद्रण के लिए टेम्पलेट्स को प्रभावित करता है। कृपया निम्नलिखित दस्तावेज़ पढ़ें । आप व्यवस्थापक पैनल के ग्राहक क्षेत्रों के बारे में सही हैं। मैं अपने उत्तर के इस भाग को पुनः प्रकाशित करूंगा।