logo

एक्स्ट्रा ब्लॉक टाइप्स (EBT) - नया लेआउट बिल्डर अनुभव❗

एक्स्ट्रा ब्लॉक टाइप्स (EBT) - स्टाइलिश, कस्टमाइज़ेबल ब्लॉक टाइप्स: स्लाइडशो, टैब्स, कार्ड्स, एकॉर्डियन्स और कई अन्य। बैकग्राउंड, DOM बॉक्स, जावास्क्रिप्ट प्लगइन्स के लिए बिल्ट-इन सेटिंग्स। आज ही लेआउट बिल्डिंग का भविष्य अनुभव करें।

डेमो EBT मॉड्यूल्स EBT मॉड्यूल्स डाउनलोड करें

❗एक्स्ट्रा पैराग्राफ टाइप्स (EPT) - नया पैराग्राफ्स अनुभव

एक्स्ट्रा पैराग्राफ टाइप्स (EPT) - एनालॉजिकल पैराग्राफ आधारित मॉड्यूल्स का सेट।

डेमो EPT मॉड्यूल्स EPT मॉड्यूल्स डाउनलोड करें

स्क्रॉल

9.9. Drupal में कॉन्फ़िगरेशन प्रबंधन। Active, Sync कॉन्फ़िगरेशन, DEV से LIVE तक कॉन्फ़िगरेशन ट्रांसफर करना।

17/10/2025, by Ivan

Menu

Drupal में कॉन्फ़िगरेशन सामग्री प्रकारों, फील्ड्स, कॉन्फ़िगरेशन फॉर्म्स और वेरिएबल्स के सभी सेटिंग्स का आधार है। कॉन्फ़िगरेशन की मदद से हम एक साइट से दूसरी साइट पर परिवर्तन ट्रांसफर कर सकते हैं, एक ही समय में विभिन्न विशेषताओं का विकास कर सकते हैं और बिना एक-दूसरे में हस्तक्षेप किए।

कॉन्फ़िगरेशन को YML फाइलों में अपलोड किया जा सकता है और Git रिपॉजिटरी में जोड़ा जा सकता है, ताकि आप साइट सेटिंग्स में अपने परिवर्तनों को कमिट कर सकें और परिवर्तनों को Dev या Live पर ट्रांसफर कर सकें। Drupal में कॉन्फ़िगरेशन का विचार Features मॉड्यूल के कार्य करने के तरीके से मिलता-जुलता है:

https://www.drupal.org/project/features

केवल Features सभी मॉड्यूल्स के साथ एकीकृत नहीं है और हमेशा सभी साइट सेटिंग्स को Features के माध्यम से ट्रांसफर करना संभव नहीं था। Drupal में कॉन्फ़िगरेशन सभी सेटिंग्स के साथ काम करता है और आपको सब कुछ फाइलों में अपलोड करने की अनुमति देता है।

Drupal इंस्टॉल करते समय कॉन्फ़िगरेशन अपलोड करने के लिए एक फोल्डर बनाता है। डिफ़ॉल्ट रूप से यह एक लंबा नाम वाला फोल्डर होता है, जो sites/default/files में स्थित होता है:

config

फोल्डर का नाम यादृच्छिक रूप से जनरेट किया जाता है क्योंकि यह फोल्डर सार्वजनिक डोमेन में स्थित होता है, और इसकी फ़ाइलों को 777 एक्सेस अधिकार मिलते हैं। इतना लंबा नाम फोल्डर के नाम को कॉन्फ़िगरेशन से मेल नहीं खाने देगा ताकि उन्हें डाउनलोड किया जा सके। दरअसल, कॉन्फ़िगरेशन में API, Solr, SMTP एक्सेस और अन्य जानकारी हो सकती है, जिसे छुपाना आवश्यक है। हम settings.php फाइल के माध्यम से कॉन्फ़िगरेशन फोल्डर का पथ निर्दिष्ट कर सकते हैं:

$config_directories['sync'] = 'sites/default/files/config__RPFDnw0- VygzmxgHiXPoXGNKYmjVi3mDZmP5exZX8tRleV9jXG6ZECaPRaxekelYsMCF42HwA/sync';

Sync फोल्डर का उपयोग साइटों के बीच कॉन्फ़िगरेशन ट्रांसफर करने के लिए किया जाएगा। Drupal डिफ़ॉल्ट रूप से कॉन्फ़िगरेशन को डेटाबेस में स्टोर करता है और सक्रिय कॉन्फ़िगरेशन का उपयोग करता है। आप सक्रिय कॉन्फ़िगरेशन को फाइलों में भी स्टोर कर सकते हैं जैसे कि sync फोल्डर, लेकिन सबसे अच्छा है कि सक्रिय कॉन्फ़िगरेशन को डेटाबेस में ही रखें, ताकि Drupal तेज़ी से काम करे। आप PhpMyAdmin या Adminer के माध्यम से config टेबल को देख सकते हैं:

config

यहां कॉन्फ़िगरेशन के साथ सीरियलाइज्ड एरेज़ स्टोर होते हैं।

सामान्यतः, sync फोल्डर को sites/default/files के बाहर स्टोर किया जाता है, क्योंकि फ़ाइलों का फोल्डर गिट में स्टोर नहीं होता। अब हम कॉन्फ़िगरेशन फोल्डर के पथ को बदलते हैं:

$config_directories['sync'] = 'config/sync';

अब हम अपने कॉन्फ़िगरेशन को git में जोड़ सकते हैं। आप कॉन्फ़िगरेशन को मैन्युअली अपलोड कर सकते हैं:

/admin/config/development/configuration/full/export

Configuration -> Configuration synchronization -> Export

export

यदि आप Export बटन पर क्लिक करते हैं, तो Drupal सभी कॉन्फ़िगरेशन के साथ एक आर्काइव प्रदर्शित करेगा। अब आप इन कॉन्फ़िगरेशन्स को git में जोड़ सकते हैं:

configuration

साइट के माध्यम से मैन्युअल रूप से कॉन्फ़िगरेशन का अनलोडिंग हमेशा काम नहीं करता। जब आपके पास बहुत सारे कॉन्फ़िगरेशन होते हैं, तो अपलोड बीच में ही रुक सकता है। इसलिए, सबसे अच्छा है कि आप इसे drush के माध्यम से अपलोड करें:

drush config-export

या Drupal Console के माध्यम से:

drupal config:export

इसी तरह, इम्पोर्ट भी drush के माध्यम से किया जा सकता है:

drush config-import

और Drupal Console के माध्यम से:

drupal config:import

कॉन्फ़िगरेशन्स को साइट के रूट में रखना एक अच्छा विचार नहीं है। सबसे अच्छा है कि आप कॉन्फ़िगरेशन्स को एक ऑफ-साइट फोल्डर में स्टोर करें और settings.php को बदलें:

$config_directories['sync'] = '../config/sync';

जब आप Drupal का अध्ययन कर रहे हैं, तो आप कॉन्फ़िगरेशन्स को साइट के रूट में फोल्डर के रूप में छोड़ सकते हैं।

अब जब आपने कॉन्फ़िगरेशन अपलोड कर लिया है और उसे गिट में जोड़ लिया है, तो आप इसे दूसरी साइट पर अपलोड कर सकते हैं। आइए हम साइट पर कोई सेटिंग्स बदलते हैं, जैसे साइट नाम:

/admin/config/system/site-information

और Configuration Synchronization पेज पर जाएं:

/admin/config/development/configuration

syncronize

Drupal वर्तमान सक्रिय कॉन्फ़िगरेशन को config टेबल से sync कॉन्फ़िगरेशन के साथ तुलना करता है और यदि उनमें अंतर होते हैं, तो आप उन्हें इस पेज पर देख सकते हैं। यदि आप Import all बटन पर क्लिक करते हैं, तो आपको अपना sync कॉन्फ़िगरेशन सक्रिय कॉन्फ़िगरेशन में लोड करने के लिए प्रेरित किया जाएगा। इस तरह आप अपने परिवर्तनों को भर सकते हैं।