Breadcrumbs

This example shows how to create breadcrumb navigation using UmbNav menu items and content relationships.

Overview

While breadcrumbs typically follow the content tree hierarchy, you can also create breadcrumbs that follow your navigation structure, which may be organized differently.

Method 1: Content-Based Breadcrumbs

The simplest approach uses Umbraco's content tree:

@{
    var ancestors = Model.Ancestors().Reverse();
}

<nav aria-label="Breadcrumb">
    <ol class="breadcrumb">
        @foreach (var ancestor in ancestors)
        {
            <li class="breadcrumb__item">
                <a href="@ancestor.Url()">@ancestor.Name</a>
            </li>
        }
        <li class="breadcrumb__item breadcrumb__item--current" aria-current="page">
            @Model.Name
        </li>
    </ol>
</nav>

Method 2: Navigation-Based Breadcrumbs

For breadcrumbs that follow your menu structure rather than content hierarchy:

Helper Extension Method

Razor Implementation

Method 3: Hybrid Approach

Combine navigation structure with content ancestors:

View Component Implementation

Views/Shared/Components/Breadcrumb/Default.cshtml

Usage

CSS Styles

JSON-LD Structured Data

For better SEO, you can also output JSON-LD:

Last updated

Was this helpful?