टेक्स्ट फ़ाइलों से उत्पादों का आयात (Import)
यदि आपके स्टोर में केवल कुछ ही उत्पाद हैं, तो उन्हें मैन्युअल रूप से जोड़ना स्वीकार्य है। लेकिन क्या होगा जब आपके पास सैकड़ों या हजारों उत्पाद हों? यह तरीका बहुत समय लेता है और बड़े स्टोर्स के लिए बहुत प्रभावी नहीं है। कल्पना कीजिए कि यदि आपके पास 10,000 उत्पाद हैं और प्रत्येक को जोड़ने में लगभग पाँच मिनट लगते हैं, तो पूरी प्रक्रिया को पूरा करने में लगभग पाँच कार्य-महीने लगेंगे! इसके अलावा, आपको इंटरनेट की धीमी गति या कमांड त्रुटियों जैसी समस्याओं का सामना करना पड़ सकता है। इसलिए सबसे अच्छा समाधान है — टेक्स्ट फ़ाइल से उत्पादों का **आयात (Import)** करना।
आप तीन प्रकार की फ़ाइलों से उत्पाद आयात कर सकते हैं: कॉमा-सेपरेटेड वैल्यू (CSV), सेमीकोलन-सेपरेटेड वैल्यू (SSV), या टैब-सेपरेटेड वैल्यू (TSV)। CSV फ़ाइलें तालिकाओं या सूचियों की सामग्री को सहेजती हैं, जहाँ प्रत्येक पंक्ति एक उत्पाद का प्रतिनिधित्व करती है और प्रत्येक फ़ील्ड को अल्पविराम से अलग किया जाता है। उदाहरण के लिए, यदि आपकी तालिका इस प्रकार है:
तो इसका CSV रूप इस प्रकार होगा:
"Name","Category","SKU","Price"
"iPod Nano","iPods",100001,"199.99"
"iPod Classic","iPods",100002,"249.99"
"iPod Shuffle","iPods",100003,"79.99"
सेमीकोलन से विभाजित फ़ाइलों (SSV) में अल्पविराम की जगह सेमीकोलन आता है, जबकि टैब-फ़ाइलों (TSV) में टैब का उपयोग विभाजक के रूप में होता है। हम इस उदाहरण में CSV का उपयोग करेंगे, लेकिन प्रक्रिया सभी प्रकारों के लिए समान है।
Ubercart में CSV फ़ाइलें आयात करने से पहले, आपको पहले Node import मॉड्यूल स्थापित करना होगा:
1. http://drupal.org/project/node_import पर जाएँ और Node import मॉड्यूल डाउनलोड करें (Drupal 6.x संस्करण)। साथ ही, इसके निर्भर मॉड्यूल्स Date और Advanced help भी डाउनलोड करें:
2. सभी मॉड्यूल्स को अनज़िप करें और उन्हें sites/all/modules
फ़ोल्डर में कॉपी करें।
3. मॉड्यूल पेज पर जाएँ और Date, Advanced help, और Node import को सक्षम करें।
4. इम्पोर्ट पेज अब इस पथ पर उपलब्ध होगा: Administer | Content management | Import content.
इस पेज पर तीन टैब होंगे:
- List — पहले से बनाए गए सभी इम्पोर्ट और अपलोड की गई फ़ाइलें दिखाता है।
- New import — नया इम्पोर्ट विज़ार्ड शुरू करता है।
- Settings — कॉन्फ़िगरेशन पेज खोलता है।
पहले “Settings” पर क्लिक करें ताकि आप कॉन्फ़िगरेशन देख सकें:
- Import directory: यहाँ आप अपनी CSV फ़ाइलें अपलोड कर सकते हैं (FTP या विज़ार्ड के माध्यम से)।
- Allow FTP uploads: यदि आप FTP के माध्यम से अपलोड करना चाहते हैं, तो इसे सक्षम करें।
- सुरक्षा कारणों से, FTP अपलोड की अनुमति देने पर “File owner” भी सेट करें ताकि फाइलें केवल अधिकृत उपयोगकर्ताओं के लिए उपलब्ध हों।
- Allowed extensions: यहाँ अनुमत फ़ाइल एक्सटेंशन निर्दिष्ट करें (जैसे CSV)।
आमतौर पर यहाँ कुछ बदलने की आवश्यकता नहीं होती, इसलिए “Save configuration” पर क्लिक करें और मुख्य पेज पर लौटें।
CSV फ़ाइलें बनाने का सबसे आसान तरीका है — किसी स्प्रेडशीट एडिटर (जैसे Microsoft Excel या OpenOffice Calc) का उपयोग करना। ये प्रोग्राम अपनी आंतरिक फ़ाइल फॉर्मेट में डेटा सेव करते हैं, लेकिन आप आसानी से उन्हें CSV के रूप में एक्सपोर्ट कर सकते हैं। यह Ubercart में सीधे उत्पाद जोड़ने की तुलना में कहीं तेज़ है।
प्रत्येक पंक्ति एक उत्पाद का प्रतिनिधित्व करती है, और प्रत्येक स्तंभ (column) उत्पाद की एक विशेषता (property) को दर्शाता है। जैसे हमने मैन्युअली नया उत्पाद जोड़ा था, उसी तरह हर फ़ील्ड के लिए एक कॉलम होना चाहिए। उदाहरण के लिए, मैंने यह तालिका बनाई है:
अब तालिका को CSV फॉर्मेट में सेव करें:
इस तालिका में छह कॉलम हैं: SKU, नाम, विवरण, श्रेणी, कीमत और चित्र (images)। अपनी फ़ाइल भी इसी संरचना में बनाएँ और CSV के रूप में सेव करें। फिर अपने उत्पादों की छवियाँ (images) सर्वर पर अपलोड करें — उदाहरण के लिए FTP के माध्यम से sites/default/files/import
फ़ोल्डर में।
अब Ubercart में जाएँ और “New import” बटन दबाएँ ताकि इम्पोर्ट प्रक्रिया शुरू हो सके:
पहला चरण: सामग्री का प्रकार चुनें — “Product” और “Next” पर क्लिक करें।
दूसरा चरण: CSV फ़ाइल चुनें या अपलोड करें और “Next” पर क्लिक करें।
तीसरा चरण: फ़ाइल प्रारूप सेट करें। पहली पंक्ति में कॉलम नाम हैं, इसलिए उसे चयनित रहने दें। फ़ॉर्मेट के लिए “CSV” चुनें। Microsoft Excel आमतौर पर CSV को सेमीकोलन के साथ सेव करता है, जबकि OpenOffice अल्पविराम का उपयोग करता है। फिर “Next” दबाएँ।
यदि यह त्रुटि दिखाई दे:
Fatal error: Call to undefined function uc_product_node_is_product()
तो फ़ाइल uc_product.inc (लाइन 15) में कोड बदलें:
uc_product_node_is_product($node_type)
→ uc_product_is_product($node_type)
चौथा चरण: कॉलम्स को उत्पाद फ़ील्ड्स से मिलाएँ। यदि आपने सही हेडर उपयोग किए हैं, तो मॉड्यूल स्वचालित रूप से मिलान कर देगा। अन्यथा, मैन्युअली ड्रॉपडाउन से सही फ़ील्ड चुनें और “Next” पर क्लिक करें।
पाँचवाँ और छठा चरण: अतिरिक्त सेटिंग्स और डिफ़ॉल्ट मान। इन्हें वैसे ही छोड़ दें और “Next” पर क्लिक करें।
सातवाँ चरण: पूर्वावलोकन (Preview) पृष्ठ पर सभी डेटा की समीक्षा करें। यदि सब कुछ सही है, “Next” दबाएँ। ध्यान दें कि CSV फ़ाइल UTF-8 एन्कोडिंग में होनी चाहिए; Excel डिफ़ॉल्ट रूप से ANSI में सेव करता है, जिससे हिंदी या अन्य भाषा के अक्षर विकृत हो सकते हैं।
आठवाँ चरण: इम्पोर्ट शुरू करें। प्रक्रिया पूरी होने पर रिपोर्ट देखें — कितनी पंक्तियाँ सफलतापूर्वक आयात हुईं और किनमें त्रुटियाँ हैं। यदि CSV फ़ाइल अब आवश्यक नहीं है, तो उसे सर्वर से हटा दें।
और अंत में, आप उत्पाद कैटलॉग में अपने आयात किए गए उत्पाद देख पाएँगे —
बधाई हो! अक्सर इम्पोर्ट प्रक्रिया में त्रुटियाँ आती हैं, लेकिन चिंता न करें — ये सामान्य हैं, और उनके समाधान Ubercart फ़ोरम या Google पर आसानी से मिल जाते हैं।