हां, आप यह कर सकते हैं।
इसे पूरा करने के लिए हम इस तथ्य का लाभ उठाएंगे कि वर्तमान पृष्ठ को हमेशा तरल चर द्वारा दर्शाया जाता है: page
टेम्पलेट में, और यह भी कि प्रत्येक पोस्ट / पृष्ठ की page.url
विशेषता में एक विशिष्ट पहचानकर्ता होता है।
इसका मतलब है कि हमें अपने नेविगेशन पृष्ठ को बनाने के लिए सिर्फ एक लूप का उपयोग करना होगा, और ऐसा करके हम page.url
लूप के प्रत्येक सदस्य के खिलाफ जांच कर सकते हैं । यदि यह एक मैच पाता है, तो यह उस तत्व को उजागर करना जानता है। ये रहा:
{% for node in site.pages %}
{% if page.url == node.url %}
<li class="active"><a href="{{node.url}}" class="active">{{node.title}}</a></li>
{% else %}
<li><a href="{{node.url}}">{{node.title}}</a></li>
{% endif %}
{% endfor %}
यह उम्मीद के मुताबिक काम करता है। हालाँकि आप शायद अपने सभी पेज को अपने नेव बार में नहीं चाहते हैं। पृष्ठ "समूहीकरण" का अनुकरण करने के लिए आप कुछ इस तरह से कर सकते हैं:
## Put the following code in a file in the _includes folder at: ./_includes/pages_list
{% for node in pages_list %}
{% if group == null or group == node.group %}
{% if page.url == node.url %}
<li class="active"><a href="{{node.url}}" class="active">{{node.title}}</a></li>
{% else %}
<li><a href="{{node.url}}">{{node.title}}</a></li>
{% endif %}
{% endif %}
{% endfor %}
{% assign pages_list = nil %}
{% assign group = nil %}
अब पृष्ठ "समूहीकृत" हो सकते हैं। पृष्ठ को एक समूह देने के लिए आपको इसे YAML फ्रंट मैटर के पन्नों में निर्दिष्ट करना होगा:
---
title: blah
categories: blah
group: "navigation"
---
अंत में आप अपने नए कोड का उपयोग कर सकते हैं! जहां भी आपको अपने टेम्पलेट में जाने के लिए आपके नेविगेशन की आवश्यकता होती है, बस अपनी फ़ाइल को "कॉल" करें और इसे कुछ पृष्ठ और उस समूह को पास करें जिसे आप प्रदर्शित करना चाहते हैं:
<ul>
{% assign pages_list = site.pages %}
{% assign group = 'navigation' %}
{% include pages_list %}
</ul>
उदाहरण
यह कार्यक्षमता Jekyll-Bootstrap ढांचे का हिस्सा है । आप यहाँ उल्लिखित कोड के लिए सटीक दस्तावेज देख सकते हैं: http://jekyllbootstrap.com/api/bootstrap-api.html#jbpages_list
अंत में आप इसे वेबसाइट के भीतर ही देख सकते हैं। बस दाहिने नेविगेशन को देखें और आप देखेंगे कि वर्तमान पृष्ठ हरे रंग में हाइलाइट किया गया है: उदाहरण हाइलाइट किए गए नेव लिंक