2012-01-27 9 views
9

में लेखक संग्रह पृष्ठ मैं गीथब पृष्ठों पर जेकील के साथ एक से अधिक लेखक ब्लॉग बनाने की कोशिश कर रहा हूं। मैंने लेखकों सरणी क्षेत्र को _config.yml में जोड़ा और मैं पोस्ट टेम्पलेट पर उस डेटा का उपयोग कर सकता हूं।जेकिल

_config.yml:

authors: 
    muratcorlu: 
     display_name: Murat Corlu 
     avatar: 2906955ae59c795275979d3782d7bfca 

posts.html

{% assign author = site.authors[page.author] %} 

<p>Author: {{ author.display_name }}</p> 

अब मैं (यानी लिस्टिंग पदों muratcorlu द्वारा लेखक /authors/muratcorlu/ की तरह एक यूआरएल के साथ एक लेखक पुरालेख पेज बनाना चाहते), लेकिन मुझे नहीं पता कि मैं यूआरएल से लेखक का नाम कैसे प्राप्त कर सकता हूं।

उत्तर

7

मुझे डर है कि आप स्वचालित रूप से उन पृष्ठों को नहीं बना सकते हैं। यदि आपके पास 5 लेखक हैं, तो आपको मैन्युअल रूप से 5 पेज बनाना होगा। पेज एक ही लेआउट का उपयोग कर सकते हैं, इसलिए यह बहुत दर्दनाक नहीं होगा।

यह होगा लेखकों/muratcorlu.textile

--- 
layout: author 
author: muratcorlu 
--- 

आप उन में से प्रत्येक के लिए मैन्युअल रूप से बनाना होगा। सौभाग्य से, आपको कुछ और करने की ज़रूरत नहीं है - बाकी को साझा किए गए लेआउट में रखा जा सकता है जो इस तरह दिख सकता है:

<ul> 
{% for p in site.pages do %} 
    {% if p.author == page.author %} 
    <li><a href="{{ p.url }}">{{ p.title }}</a></li> 
    {% endif %} 
{% endfor %} 
</ul> 
+3

क्या यह हल करने के लिए एक जेकिल प्लगइन लिखना संभव है? –

+0

अच्छी तरह से किया, यह बहुत उपयोगी है। मुझे 'site.pages' और' page.Author' को 'site.posts' और' post.author' 'में बदलना था ताकि प्रत्येक लेख लिखने वाले ब्लॉग लेखों को प्रदर्शित किया जा सके। – Lenwood