Improve breadcrumb helper
- Add support for collections - Add support for crumb links that point to auto-generated archive pages (courtesy of Jekyll Archives plugin) and single page Liquid spaghetti pages - Improve styling
This commit is contained in:
@@ -1,3 +1,17 @@
|
||||
{% case site.categories.type %}
|
||||
{% when "liquid" %}
|
||||
{% assign path_type = "#" %}
|
||||
{% when "jekyll-archives" %}
|
||||
{% assign path_type = nil %}
|
||||
{% endcase %}
|
||||
|
||||
{% if page.collection != 'posts' %}
|
||||
{% assign path_type = nil %}
|
||||
{% assign crumb_path = '/' %}
|
||||
{% else %}
|
||||
{% assign crumb_path = site.categories.path %}
|
||||
{% endif %}
|
||||
|
||||
<nav class="breadcrumbs">
|
||||
<ol itemscope itemtype="http://schema.org/BreadcrumbList">
|
||||
{% assign crumbs = page.url | split: '/' %}
|
||||
@@ -15,7 +29,7 @@
|
||||
{% else %}
|
||||
{% assign i = i | plus: 1 %}
|
||||
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
|
||||
<a href="{{ base_path }}{% assign crumb_limit = forloop.index | plus: 1 %}{% for crumb in crumbs limit: crumb_limit %}{{ crumb | append: '/' }}{% endfor %}" itemprop="item"><span itemprop="name">{{ crumb | replace: '-', ' ' | replace: '%20', ' ' | capitalize }}</span></a>
|
||||
<a href="{{ base_path }}{{ crumb | prepend: path_type | prepend: crumb_path }}" itemprop="item"><span itemprop="name">{{ crumb | replace: '-', ' ' | replace: '%20', ' ' | capitalize }}</span></a>
|
||||
<meta itemprop="position" content="{{ i }}" />
|
||||
</li>
|
||||
<span class="sep">{{ site.breadcrumb_separator }}</span>
|
||||
|
||||
Reference in New Issue
Block a user