{%- comment -%} Include as: {%- include components/breadcrumbs.html -%} Depends on: page, site. Results in: HTML for the breadcrumbs component. Overwrites: node, pages_list, parent_page, grandparent_page. {%- endcomment -%} {%- if page.url != "/" and page.parent -%} {%- assign pages_list = site[page.collection] | default: site.html_pages -%} {%- assign parent_page = nil -%} {%- assign grandparent_page = nil -%} {%- for node in pages_list -%} {%- if node.has_children and page.grand_parent -%} {%- if node.title == page.parent and node.parent == page.grand_parent -%} {%- assign parent_page = node -%} {%- endif -%} {%- if node.title == page.grand_parent -%} {%- assign grandparent_page = node -%} {%- endif -%} {%- if parent_page and grandparent_page -%} {%- break -%} {%- endif -%} {%- elsif node.has_children and node.title == page.parent and node.parent == nil -%} {%- assign parent_page = node -%} {%- break -%} {%- endif -%} {%- endfor -%} {%- endif -%}