Skip to content

Commit

Permalink
Add breadcrumb metadata (#2072)
Browse files Browse the repository at this point in the history
  • Loading branch information
jonaharagon committed Mar 5, 2023
1 parent 35c95c0 commit bc1f5f2
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 0 deletions.
20 changes: 20 additions & 0 deletions theme/partials/path-item.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{% macro render(nav_item, ref = nav_item) %}
{% if nav_item.children %}
{% set first = nav_item.children | first %}
{% if first.children %}
{{ render(first, ref) }}
{% else %}
<a href="{{ first.canonical_url | url }}" class="md-path__link" property="item" typeof="WebPage">
<span class="md-ellipsis" property="name">
{{ ref.title }}
</span>
</a>
{% endif %}
{% else %}
<a href="{{ nav_item.canonical_url | url }}" class="md-path__link" property="item" typeof="WebPage">
<span class="md-ellipsis" property="name">
{{ ref.title }}
</span>
</a>
{% endif %}
{% endmacro %}
33 changes: 33 additions & 0 deletions theme/partials/path.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{% import "partials/path-item.html" as item with context %}
{% if page.meta and page.meta.hide %}
{% set hidden = "hidden" if "path" in page.meta.hide %}
{% endif %}
{% set depth = page.ancestors | length %}
{% if nav.homepage %}
{% set depth = depth + 1 %}
{% endif %}
{% if depth > 1 %}
{% set count = namespace(value=1) %}
<nav class="md-path" aria-label="{{ lang.t('nav') }}" {{ hidden }}>
<ol class="md-path__list" vocab="https://schema.org/" typeof="BreadcrumbList">
{% if nav.homepage %}
<li class="md-path__item" property="itemListElement" typeof="ListItem">
{{ item.render(nav.homepage) }}
<meta property="position" content="{{ count.value }}">
{% set count.value = count.value + 1 %}
</li>
{% endif %}
{% for nav_item in page.ancestors | reverse %}
<li class="md-path__item" property="itemListElement" typeof="ListItem">
{{ item.render(nav_item) }}
<meta property="position" content="{{ count.value }}">
{% set count.value = count.value + 1 %}
</li>
{% endfor %}
<li class="md-path__item" property="itemListElement" typeof="ListItem">
<span class="md-ellipsis" property="name">{{ page.title }}</span>
<meta property="position" content="{{ count.value }}">
</li>
</ol>
</nav>
{% endif %}

0 comments on commit bc1f5f2

Please sign in to comment.