I wanted something that would show up to 5 recent posts of the same category. Jekyll has a related_posts site variable, but it filters by tags instead of categories, and it was giving me all kinds of weirdnesses. I figured out a solution with some clever use of the liquid syntax 1:
{% unless page.category == null %}
{% capture pageCategory %}{{ page.category }}{% endcapture %}
{% unless site.categories[pageCategory].size == 1 %}
<div class="row related-posts">
<h2 class="text-center">More {{ page.category }} Posts!</h2>
<div class="medium-12 small-12 columns">
{% for post in site.categories[pageCategory] limit:6 %}
{% unless post.title == page.title %}
<h3>
<a href="{{ site.url }}{{ site.baseurl }}{{ post.url }}">
{{ post.title }}
</a>
</h3>
{% endunless %}
{% endfor %}
</div>
</div>
{% endunless %}
{% endunless %}
Join our DigitalOcean community of over a million developers for free! Get help and share knowledge in our Questions & Answers section, find tutorials and tools that will help you grow as a developer and scale your project or business, and subscribe to topics of interest.
Sign up