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.
- In Siteleaf you can call your tag set anything you want (default is 'tags', but can be anything).
values
is 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 thevalues
member? It’s not mentioned in siteleaf-themes. Syntactically it’s a bit confusing to me because it looks like we’re not iterating over thetags
array itself, but some child of it.sort
is 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 thein
clause in ( ). Is this syntactically invalid or is there some subtlety I’m overlooking?