2013-11-01 15 views
9

Vorrei elencare un numero fisso di post recenti con la stessa categoria del post corrente. Questo è quello che sono arrivato a:Come posso elencare i post della stessa categoria in Jekyll?

{% for category_name in page.categories limit:1 %} 
    <h2>Other articles in {{ category_name }}</h2> 
    <ul> 
     <!-- now what? --> 
    </ul> 
{% endfor %} 

che so di site.categories, ma non so come pedice dizionario. Ovviamente, site.categories.category_name viene preso alla lettera, cercando una categoria denominata "nome_categoria".

risposta

12
{% for post in site.categories[category_name] %} 
    <li>{{ post.title }}</li> 
{% endfor %} 
+1

non funziona, il codice di muggito funziona si prega di aggiornare il codice –

14

Basato sul Jekyll documentation, indicizzatore (cioè, [category_name]) non è più la risposta corretta. Ora (almeno dal Jekyll v2), dato un nome di categoria FOO, il modo corretto per elencare tutti i messaggi di questa categoria è

{% for post in site.categories.FOO %} 
    <li>{{ post.title }}</li> 
{% endfor %} 

notare, di recente ho incontrato questo problema, la mia configurazione è

$ jekyll -v 
jekyll 2.0.3 
+3

Ma 'category_name' è una variabile, mentre' foo' è un letterale, così come potrebbe Thi s lavoro? –

+0

funziona site.categories.category_name –

+0

Claudiu Non funziona. – Sajgoniarz

1

questo funziona per me:

{% for post in site.categories.FOO %} 
+ [{{ post.title }}]({{ page.url }}) 
{% endfor %} 
Problemi correlati