2012-01-27 139 views
9

我想在Github页面上用Jekyll制作一个多作者博客。我将作者数组字段添加到_config.yml,我可以在帖子模板上使用该数据。在Jekyll中的作者归档页面

_config.yml:

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

posts.html

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

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

现在我想打一个作家档案页面的URL像/authors/muratcorlu/(即上市帖子muratcorlu撰写),但我不知道如何从url获取作者姓名。

回答

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

是否有可能写一个哲基尔插件来解决? – 2012-01-28 20:27:09

+0

做得很好,这非常有用。我不得不将'site.pages'和'page.author'改成'site.posts'和'post.author',让它显示每个作者写的博客文章。 – Lenwood 2013-06-29 13:20:04