<!– # Jekyll Group-By-Array 0.1.0 # github.com/mushishi78/jekyll-group-by-array # © 2015 Max White <mushishi78@gmail.com> # MIT License –>

<!– Initialize –> {% assign __empty_array = '' | split: ',' %} {% assign group_names = __empty_array %} {% assign group_items = __empty_array %}

<!– Map –> {% assign __names = include.collection | map: include.field %}

<!– Flatten –> {% assign __names = __names | join: ',' | join: ',' | split: ',' %}

<!– Uniq –> {% assign __names = __names | sort %} {% for name in __names | sort %}

<!– If not equal to previous then it must be unique as sorted –> {% unless name == previous %}

<!– Push to group_names –> {% assign group_names = group_names | push: name %} {% endunless %}

{% assign previous = name %} {% endfor %}

<!– group_items –> {% for name in group_names %}

<!– Collect if contains –> {% assign __item = __empty_array %} {% for __element in include.collection %} {% if __element contains name %} {% assign __item = __item | push: __element %} {% endif %} {% endfor %}

<!– Push to group_items –> {% assign group_items = group_items | push: __item %} {% endfor %}