Last active
December 19, 2015 15:48
-
-
Save pdokas/5978746 to your computer and use it in GitHub Desktop.
The simplest way I can find to find a sorted list of all tags across all posts in Siteleaf.
Author
Author
- In Siteleaf you can call your tag set anything you want (default is 'tags', but can be anything).
valuesis the generic name for the array of 'tag' values. Here is what the data looks like behind the scenes:
https://github.com/siteleaf/siteleaf-api#get-v1taxonomyidjson
We'll update the theme docs to make this more clear.
-
Agreed, they list it but don't explain it further.
-
You can't sort on a for statement, but you can sort first and assign it to a new variable like this:
{% assign sorted_tags = site.pages['blog'].taxonomy['tags'].values | sort:'value' %}
Now you can use the sorted_tags variable:
{% for tag in sorted_tags %}
<li><a href="{{tag.url}}">{{tag.value}}</a></li>
{% endfor %}
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment

Very cool, this works perfectly, thanks for the speedy work on this too!
While this is perfect, I have a few questions to better my understanding.
site.pages['blog'].taxonomy['tags'].values, what is thevaluesmember? It’s not mentioned in siteleaf-themes. Syntactically it’s a bit confusing to me because it looks like we’re not iterating over thetagsarray itself, but some child of it.sortis awesome. It’s a shame it’s not in the Liquid For Designers docs.{% for tag in site.pages.blog.taxonomy.tags.values | sort:'value' %}, even when wrapping theinclause in ( ). Is this syntactically invalid or is there some subtlety I’m overlooking?