Skip to content

Instantly share code, notes, and snippets.

@Caffe1neAdd1ct
Last active August 29, 2015 14:05
Show Gist options
  • Save Caffe1neAdd1ct/12157f7cc715bb6d26fc to your computer and use it in GitHub Desktop.
Save Caffe1neAdd1ct/12157f7cc715bb6d26fc to your computer and use it in GitHub Desktop.
Listing jekyll posts using liquid grouped by year then month
---
layout: page
sitemap:
priority: 0.7
changefreq: monthly
lastmod: 2014-08-01T15:06:00
---
<div class="row-fluid">
<div class="span12 padded">
<h1>zVPS Team Blog</h1>
<hr>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
{% for post in site.posts %}
{% capture this_year %}{{ post.date | date: "%Y" }}{% endcapture %}
{% capture this_month %}{{ post.date | date: "%B" }}{% endcapture %}
{% capture this_title %}{{ post.title }}{% endcapture %}
{% capture next_year %}{{ post.next.date | date: "%Y" }}{% endcapture %}
{% capture next_month %}{{ post.next.date | date: "%B" }}{% endcapture %}
{% capture next_title %}{{ post.next.title }}{% endcapture %}
{% if forloop.first %}
{% assign count = '0' %}
<!-- First Year Row Started -->
<div class="row-fluid">
<!-- First Year Col Started -->
<div class="span4" style="text-align: center;">
<div class="row-fluid">
<div class="span12">
<h2 id="{{ this_year }}-ref">{{this_year}}</h2>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<h3 id="{{ this_year }}-{{ this_month }}-ref">{{ this_month }}</h3>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<a href="{{ post.url }}">{{ post.title }}</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% elsif this_year == next_year and this_month == next_month %}
<!-- same year and month just print post -->
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<a href="{{ post.url }}">{{ post.title }}</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% elsif this_year == next_year and this_month != next_month %}
<!-- Starting next month -->
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<h3 id="{{ this_year }}-{{ this_month }}-ref">{{ this_month }}</h3>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<a href="{{ post.url }}">{{ post.title }}</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% elsif this_year != next_year and this_month != next_month %}
<hr class="visible-phone">
</div><!-- ends the span4 container around year change -->
<!-- start calculation from count if a new row is needed -->
{% capture count %}{{ count | plus: '1' }}{% endcapture %}
{% if count == '3' %}
</div>
<div class="row-fluid">
{% assign count = '0' %}
{% endif %}
<!-- end calculation from count if a new row is needed -->
<div class="span4" style="text-align: center;"><!-- start the span3 container around year change -->
<div class="row-fluid">
<div class="span12">
<h2 id="{{ this_year }}-ref">{{this_year}}</h2>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<h3 id="{{ this_year }}-{{ this_month }}-ref">{{ this_month }}</h3>
</div>
</div>
</div>
</div>
</div>
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<div class="container-fluid">
<div class="row-fluid">
<div class="span12">
<a href="{{ post.url }}">{{ post.title }}</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endif %}
{% endfor %}
<hr class="visible-phone">
</div><!-- ends the span4 container around each year -->
</div><!-- end the row of years -->
</div>
</div>
</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment