This project is not covered by Drupal’s security advisory policy.

Breadcrumb Custom lets Drupal site builders create flexible breadcrumbs for content pages and Views pages using taxonomy hierarchies, node fields, routes, and custom links.

Features

Breadcrumb Custom provides a rule-based system for replacing Drupal's default breadcrumbs with breadcrumbs tailored to the structure and navigation needs of a site.

Each rule defines a condition and the breadcrumb that should be displayed:

condition||breadcrumb

The module evaluates rules in the configured order. The first matching rule is used.

Available features include:

  • Define breadcrumbs for specific node bundles.
  • Define breadcrumbs for specific Views displays.
  • Build breadcrumbs from taxonomy term hierarchies.
  • Build breadcrumbs from taxonomy terms referenced by node fields.
  • Create custom breadcrumbs with configurable titles and links.
  • Link breadcrumb items to Drupal routes.
  • Link breadcrumb items to taxonomy terms resolved by vocabulary and name.
  • Add comments and organize large rule sets using multiple configuration lines.
  • Use Drupal cache metadata so breadcrumbs are rebuilt when their configuration or referenced entities change.

This module is useful when the default breadcrumb generated from the URL or menu structure does not accurately represent the information architecture of a site. It is particularly helpful for sites with complex taxonomies, content types, search pages, archives, or Views-based navigation.

Post-Installation

After installing and enabling the module:

  1. Go to Administration > Configuration > User interface > Breadcrumb settings (/admin/config/user-interface/breadcrumb-settings).
  2. Enable the custom breadcrumb system.
  3. Add one rule per line in the configuration field.
  4. Save the configuration.

Rules use the following format:

condition||breadcrumb

Conditions

  • entity::node.bundle

    Matches a node page for a specific content type. For example:
    entity::node.article
  • view::view_id.display_id

    Matches a specific Views display. For example:
    view::content.page_1

Breadcrumb types

  • field_term::field_name

    Builds the breadcrumb from the taxonomy term referenced by a field on the current node.
  • term::vocabulary|name_or_tid

    Builds the breadcrumb from the hierarchy of a taxonomy term. The vocabulary machine name is required.
  • custom::Title|url >> Title|url

    Builds a breadcrumb from custom title and URL pairs.

Custom breadcrumb links support the following URL formats:

  • fromRoute:route_name for a Drupal route.
  • term:vid:name for a taxonomy term URL.

Configuration examples

# Use a taxonomy term referenced by a node field.
entity::node.article||field_term::field_topic

# Use a specific taxonomy term on a node page.
entity::node.faq||term::topics|Support

# Use a specific taxonomy term on a Views page.
view::content.page_1||term::topics|News

# Create a custom breadcrumb.
entity::node.press_release||custom::News|term:topics:News >> Press releases|fromRoute:view.content.page_1

Empty lines and lines beginning with # are ignored. Rules are evaluated from top to bottom, and the first matching rule wins.

Saving the configuration automatically invalidates the relevant cached breadcrumb output. No manual cache clearing should normally be required.

Additional Requirements

This module does not require any contributed modules or external libraries.

It requires:

  • Drupal 10 or Drupal 11.
  • The core Taxonomy module.
  • The core Views module.

No additional modules or libraries are required.

The module can be used alongside any Drupal module that provides content types, taxonomy vocabularies, or Views displays. Modules that improve content navigation or taxonomy management may also be useful depending on the site's requirements.

Similar projects

Drupal core provides basic breadcrumb functionality based primarily on the current route and menu hierarchy. Breadcrumb Custom is intended for situations where more control is required.

Other breadcrumb-related projects may focus on automatically generating breadcrumbs from URL aliases, menus, or the active navigation tree. Breadcrumb Custom differs by providing an explicit rule-based configuration system that can:

  • Match node bundles and Views displays independently.
  • Build breadcrumb items from taxonomy hierarchies.
  • Read taxonomy terms from entity reference fields.
  • Combine taxonomy links, Drupal routes, and custom labels in the same breadcrumb.
  • Give administrators precise control over rule priority through rule ordering.

Supporting this Module

If you find this module useful, you can support its development by:

  • Reporting issues and suggesting improvements in the Drupal.org issue queue.
  • Providing patches or code improvements.
  • Sharing feedback and documentation based on real-world use cases.

Community Documentation

Community documentation, tutorials, demonstration sites, and video walkthroughs are welcome. Please share useful resources through the Drupal.org issue queue so they can be added here.

For configuration questions or bug reports, use the project issue queue on Drupal.org.

Maintainers

Pascual Pérez Blanco - pascuperbla

Supporting organizations: 
Development and maintenance

Project information

Releases