कस्टम शॉर्टकोड के साथ एक Divi ब्लॉग का पुनर्निर्माण
मैंने हाल ही में Rev6 के लिए ब्लॉग को फिर से डिज़ाइन किया है, जो WordPress, Divi और Cloudways का उपयोग करने वाला एक फिटनेस प्लेटफॉर्म है।
मैंने मानक Divi Blog मॉड्यूल का उपयोग नहीं किया। इसमें कस्टम URL रूटिंग और मेंबरशिप फीचर्स के लिए आवश्यक नियंत्रण की कमी है। इसके बजाय, मैंने चाइल्ड थीम में कस्टम शॉर्टकोड का एक सिस्टम बनाया।
यह दृष्टिकोण लॉजिक को पेज बिल्डर डेटाबेस के अंदर छिपाने के बजाय वर्जन वाले PHP में रखता है।
सेटअप में इन शॉर्टकोड का उपयोग किया गया है:
- [rev6_blog_sidebar] नेविगेशन और सर्च के लिए
- [rev6_sort_dropdown] सॉर्टिंग के लिए
- [rev6_post_grid] लेआउट के लिए
- [rev6_author_bar] बायलाइन के लिए
- [rev6_author_bio] लेखक अनुभाग के लिए
- [rev6_related_posts] और अधिक पढ़ने के लिए
इस निर्माण से मेरी तकनीकी सीख यहाँ दी गई हैं:
आलसी CSS ग्रिड हैक्स से बचें मैंने एक बार साइडबार को पूरे पेज पर फैलाने के लिए "grid-row: 1 / span 999" का उपयोग किया था। इसने हजारों खाली पंक्तियाँ और बहुत अधिक व्हाइटस्पेस बना दिया। इसके बजाय named grid areas का उपयोग करें। यह अधिक साफ और सुरक्षित है।
अपने कोड से पहले अपने डेटा की जाँच करें मैंने "related posts" सेक्शन को डीबग करने में काफी समय बिताया जो दिखाई नहीं दे रहा था। कोड एकदम सही था। समस्या डेटा में थी। उस कैटेगरी में केवल एक ही पोस्ट थी। मेरे कोड ने वर्तमान पोस्ट को बाहर कर दिया था, जिससे परिणाम शून्य हो गए। अपने फंक्शन्स में बग खोजने से पहले हमेशा अपने डेटाबेस कंटेंट को सत्यापित करें।
फाइलों और डेटाबेस के बीच के अंतर को समझें जब मैंने स्टेजिंग से लाइव पर माइग्रेट किया, तो लेआउट गलत दिख रहा था। मैंने CSS से इसे ठीक करने की कोशिश की, लेकिन वह विफल रहा। समस्या यह थी कि इम्पोर्ट्स टेम्पलेट्स को मूव करते हैं, डेटाबेस कंटेंट को नहीं। मॉड्यूल की चौड़ाई और पोस्ट असाइनमेंट जैसी चीजें डेटाबेस में रहती हैं। यदि माइग्रेशन के बाद लेआउट अलग दिखता है, तो डेटाबेस देखें, स्टाइलशीट नहीं।
प्रोडक्शन पर कभी भी पूरा डेटाबेस पुश न करें एक फुल सिंक (full sync) ऑर्डर्स और रजिस्ट्रेशन जैसे वास्तविक यूजर डेटा को ओवरराइट कर देता है। बिना सोचे-समझे सब कुछ पुश करने के बजाय लक्षित (targeted) ट्रांसफर का उपयोग करें।
कैश (Cache) सबसे पहला कदम है ऑप्टिमाइज्ड साइटों पर, CSS ऑप्टिमाइजेशन टूल्स अक्सर उन स्टाइल्स को हटा देते हैं जिन्हें वे अनयूज्ड (unused) समझते हैं। यदि आपके स्टाइल्स आधे-अधूरे लग रहे हैं, तो पहले अपना कैश क्लियर करें और अपना CSS फिर से जेनरेट करें।
रीडिज़ाइन लाइव है। इसमें एक साफ एडिटोरियल लेआउट और एक कस्टम लेखक प्रणाली है। कोड आसान हिस्सा था। वातावरण ने असली सबक दिए।
स्रोत: https://dev.to/highcenburg/rebuilding-a-divi-blog-with-custom-shortcodes-a-field-report-141g