2012-01-27 17 views
9

Estoy tratando de hacer un blog de autor múltiple con Jekyll en las páginas de Github. Agregué el campo array de autores al _config.yml y puedo usar esa información en la plantilla de publicaciones.Páginas de archivo de autor en 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> 

Ahora quiero hacer una página de autor archivo con una URL como /authors/muratcorlu/ (es decir, el listado mensajes escritos por muratcorlu), pero no sé cómo puedo obtener el nombre del autor de la url.

Respuesta

7

Me temo que no puede crear esas páginas automáticamente. Si tiene 5 autores, tendrá que crear 5 páginas manualmente. Las páginas pueden usar el mismo diseño, por lo que no será muy doloroso.

Esto habría autores/muratcorlu.textile

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

que tendría que crear cada uno de los manualmente. Afortunadamente, no tiene que hacer nada más: el resto se puede colocar en un diseño compartido que puede verse así:

<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

¿Es posible escribir un plugin jekyll para resolver eso? –

+0

Bien hecho, esto es bastante útil. Tuve que cambiar 'site.pages' y' page.author' por 'site.posts' y' post.author' para que mostrara los artículos del blog que cada autor había escrito. – Lenwood

Cuestiones relacionadas