2016-12-02 9 views
6

मैं पेलिकन के लिए नया हूं। मैं अपनी साइट का निर्माण कर रहा हूं ताकि मेरे पास 2 श्रेणियां हों: ब्लॉग और प्रोजेक्ट्स। मेरे पास 3 मेनू बटन हैं: होम, ब्लॉग और प्रोजेक्ट्स। मैं अपनी base.html टेम्पलेट फ़ाइल को संपादित करने की कोशिश कर रहा हूं ताकि ब्लॉग बटन सक्रिय हो, यदि मैं blog/ या उसके उपनिर्देशिका में हूं, और प्रोजेक्ट बटन सक्रिय है यदि मैं projects/ या उसके उपनिर्देशिका में हूं। अगर मेरे पास base.html में एक चरणीय पहुंच योग्य है जो मुझे वर्तमान पृष्ठ का सापेक्ष यूआरएल देता है, तो मैं इसे / द्वारा विभाजित कर सकता हूं और पथ में पहली निर्देशिका प्राप्त कर सकता हूं। मैंने चारों ओर खोज की है और मुझे वर्तमान पृष्ठ के सापेक्ष यूआरएल के लिए एक चर नहीं मिल रहा है। क्या कोई भी अंतर्निहित चर या मेरे लिए एक कस्टम बनाने के लिए एक तरीका है जिसे मैं ढूंढ रहा हूं?पेलिकन टेम्पलेट्स में वर्तमान पृष्ठ के यूआरएल के लिए परिवर्तनीय

उत्तर

6

जैसा कि मैं पेलिकन के लिए भी नया हूं, कृपया नमक के अनाज के साथ निम्नलिखित सलाह लें।

{{ output_file }} 

उदाहरण के लिए:: की जब मेरे पृष्ठों के लिए मेनू आइटम पैदा करने, मैं "save_as" के खिलाफ जांच कर सकते हैं संपत्ति

यह चर के रूप में documentation में कहा गया है कि आप वर्तमान फ़ाइल का नाम, दे देंगे पेज सटीक इसी मेनू आइटम को उजागर करने के:

{% if output_file == p.save_as %}active{% endif %} 

लेकिन आपके मामले में यह जैसे होना चाहिए वर्तमान पृष्ठ को जांचने के लिए पर्याप्त यह एक लेख है (यह मानते हुए कि ब्लॉग मेनू आइटम को हाइलाइट करने के लिए "ब्लॉग" में आपके सभी लेख शामिल हैं)।

{% if article %}class="active"{% endif %} 

अपनी परियोजनाओं "पृष्ठों" से बना रहे हैं, तो बस उन सामग्री प्रकार के प्राथमिक चर के खिलाफ जांच: जाँच करके उदाहरण के लिए यदि चर "लेख" मौजूद है

{% if page %}class="active"{% endif %} 

के लिए होम पेज, श्रेणियां, अभिलेखागार इत्यादि। "पेज_नाम" की सामग्री की जांच कर सकते हैं:

{% if page_name == 'index' %}class="active"{% endif %} 
+2

आप नहीं जानते कि आपके उत्तर ने मेरी मदद कैसे की! मैं देख रहा था कि लेख और पृष्ठों की जांच कैसे करें .. आपका 'if page_name' बिल्कुल वही है जो मुझे चाहिए! – matteo

संबंधित मुद्दे