Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Bash प्रोग्रामिंग

तेज़, अधिक लचीली साइट प्रबंधन के लिए डायनामिक Jekyll कॉन्फिग फ़ाइलें जनरेट करें

Jekyll, स्टैटिक साइट जनरेटर, कॉन्फिगरेशन के लिए _config.yml का उपयोग करता है। कॉन्फिगरेशन्स सभी Jekyll-विशिष्ट हैं। लेकिन आप इन फ़ाइलों में अपने स्वयं के कंटेंट के साथ वेरिएबल्स भी परिभाषित कर सकते हैं और उन्हें अपनी वेबसाइट पर पूरे में उपयोग कर सकते हैं। इस लेख में, मैं डायनामिक रूप से Jekyll कॉन्फिग फ़ाइलें बनाने के कुछ लाभों पर प्रकाश डालूंगा।

मेरे स्थानीय लैपटॉप पर, मैं अपनी Jekyll वेबसाइट को टेस्टिंग के लिए सर्व करने के लिए निम्न कमांड का उपयोग करता हूं:

bundle exec jekyll serve --incremental --config _config.yml

कई कॉन्फिगरेशन फ़ाइलों को संयोजित करना

स्थानीय टेस्टिंग के दौरान, कॉन्फिगरेशन विकल्पों को ओवरराइड करना कभी-कभी आवश्यक होता है। मेरी वेबसाइट के वर्तमान _config.yml में निम्न सेटिंग्स हैं:

# Jekyll Configuration

# Site Settings
url: "https://notes.ayushsharma.in"
website_url: "https://notes.ayushsharma.in/"
title: ayush sharma's notes ☕ + ? + ?️
email: ayush@ayushsharma.in
images-path: /static/images/
videos-path: /static/videos/
js-path: /static/js/
baseurl: "" # आपकी साइट का सबपथ, जैसे /blog

चूंकि स्थानीय jekyll serve URL http : //localhost:4000 है, ऊपर परिभाषित URL काम नहीं करेगा। मैं हमेशा _config.yml की एक कॉपी _config-local.yml के रूप में बना सकता हूं और सभी मानों को बदल सकता हूं। लेकिन एक आसान विकल्प है।

Jekyll कई कॉन्फिगरेशन फ़ाइलों को निर्दिष्ट करने की अनुमति देता है जहां बाद की घोषणाएं पिछली को ओवरराइड करती हैं। इसका मतलब है कि मैं निम्न कोड के साथ एक नया _config-local.yml परिभाषित कर सकता हूं:

url:""

फिर मैं ऊपर की फ़ाइल को अपने मुख्य _config.yml के साथ इस तरह संयोजित कर सकता हूं:

bundle exec jekyll serve --incremental --config _config.yml,_config-local.yml

दोनों फ़ाइलों को संयोजित करके, इस jekyll serve के लिए url का अंतिम मान खाली होगा। यह मेरी वेबसाइट में परिभाषित सभी URLs को सापेक्ष URLs में बदल देता है और उन्हें मेरे स्थानीय लैपटॉप पर काम करने लायक बनाता है।

डायनामिक कॉन्फिग फ़ाइलों को संयोजित करना

एक सरल उदाहरण के रूप में, मान लीजिए आप अपनी वेबसाइट पर वर्तमान तारीख प्रदर्शित करना चाहते हैं। इसके लिए bash कमांड है:

> date '+%A, %d %B %Y'
Saturday, 16 October 2021

मुझे पता है कि मैं Jekyll के _config.yml का उपयोग कस्टम कंटेंट के लिए भी कर सकता हूं। मैं ऊपर की तारीख को एक नई Jekyll कॉन्फिग फ़ाइल में आउटपुट करूंगा।

my_date=`date '+%A, %d %B %Y'`; echo 'my_date: "'$my_date'"' > _config-data.yml

अब _config-data.yml में है:

my_date: "Saturday, 16 October 2021"

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

bundle exec jekyll serve --incremental --config _config.yml,_config-local.yml,_config-data.yml

उपरोक्त कमांड चलाने पर, {{ site.my_date }} इसका कॉन्फिगर किया गया मान आउटपुट करता है।

निष्कर्ष

उपरोक्त उदाहरण काफी सरल है, लेकिन संभावनाएं अनंत हैं। Bash, Python, और अन्य प्रोग्रामिंग भाषाएं डायनामिक रूप से Jekyll कॉन्फिग फ़ाइलें जनरेट कर सकती हैं। मैं फिर build या serve प्रक्रिया के दौरान इन्हें संयोजित कर सकता हूं।

findmymastodon.com के लिए, मैं Mastodon यूजर आंकड़े लाने के लिए Python का उपयोग कर रहा हूं। मैं फिर इन्हें एक नई _config-data.yml फ़ाइल में लिख रहा हूं (वर्तमान में मैन्युअली)। अंत में, होम पेज और अन्य कॉन्फिगरेशन फ़ाइल से इन्हें प्रदर्शित करते हैं। इस तरह, मैं एक डायनामिक बैकएंड का लाभ उठा सकता हूं और फिर भी वह सभी स्टैटिक वेबसाइट अच्छाई बरकरार रख सकता हूं जिसका मैं इतना शौकीन हूं।

मुझे आशा है कि इसने आपके अपने स्टैटिक वेबसाइट प्रोजेक्ट्स के लिए कुछ विचार जगाए हैं। Jamstack स्टैटिक वेबसाइट्स के लिए बहुत अच्छा है, लेकिन आप डायनामिक कंटेंट के लिए एक संपूर्ण API बैकएंड बनाने से बच सकते हैं। क्यों न इसके बजाय एक बिल्ड जॉब का उपयोग करके अपडेटेड कंटेंट के साथ कॉन्फिग फ़ाइलें बनाएं? यह हर उपयोग के मामले के लिए उपयुक्त नहीं हो सकता है, लेकिन एक कम API का मतलब है कम इन्फ्रास्ट्रक्चर मूविंग पार्ट्स।

मुझे आशा है कि यह आपके अगले स्टैटिक वेबसाइट प्रोजेक्ट के दौरान किसी तरह मदद करता है। पढ़ते रहें, और हैप्पी कोडिंग।

  1. VOB फाइलें कैसे चलाएं VOB फाइलें कैसे चलाएं

    VOB (वीडियो ऑब्जेक्ट) DVD-वीडियो मीडिया में उपयोग किया जाने वाला कंटेनर फॉर्मेट है। एक VOB फ़ाइल में डिजिटल ऑडियो, डिजिटल वीडियो, सबटाइटल, DVD मेनू और यहां तक कि नेविगेशन सामग्री भी हो सकती है। VOB फ़ाइलों में, सभी सामग्री एक स्ट्रीम फॉर्म में एक साथ मल्टीप्लेक्स होती है। जबकि VOB वीडियो फॉर्मेट MPE

  1. डुप्लिकेट फ़ाइलों को त्वरित और सुरक्षित रूप से हटाएं: चरण-दर-चरण मार्गदर्शिका डुप्लिकेट फ़ाइलों को त्वरित और सुरक्षित रूप से हटाएं: चरण-दर-चरण मार्गदर्शिका

    अपने कंप्यूटर को व्यवस्थित रखना यह सुनिश्चित करने का एक महत्वपूर्ण हिस्सा है कि वह तेज़ और स्थिर रहे। इसलिए हर विंडोज़ उपयोगकर्ता को डिस्क क्लीनअप, डीफ़्रैग्मेंटेशन, रजिस्ट्री मरम्मत और डीफ़्रैग्मेंटेशन, और एंटी-वायरस स्कैन जैसे नियमित रखरखाव कार्यों को करने की आवश्यकता होती है। लेकिन एक महत्वपूर्ण

  1. विंडोज XP फाइल बैकअप गाइड: अपने डेटा की सुरक्षा करें विंडोज XP फाइल बैकअप गाइड: अपने डेटा की सुरक्षा करें

    क्या मुझे वास्तव में यह समझाने की आवश्यकता है कि विंडोज XP में फाइलों का बैकअप लेना क्यों महत्वपूर्ण है? ठीक है, आपके फाइलों का बैकअप लेने के कई कारण हैं, यहां उनमें से कुछ हैं: यदि आपकी हार्ड ड्राइव खराब हो जाती है तो आप अपना सारा डेटा खो देंगे यह संभव है कि आप गलती से फाइलों को हटा दें, हम सभी न