PressHangar

Structure & SEO

WordPress Breadcrumbs and BreadcrumbList Schema: A Complete Guide

2026-08-22 · 7 min read

Key takeaways

  • Breadcrumbs are the 'Home › Category › Post' trail that shows a reader — and a search engine — where a page sits.
  • Pairing the visible trail with BreadcrumbList structured data (JSON-LD) is what earns the breadcrumb display in search results.
  • Many block (FSE) themes ship without breadcrumbs, so you often need a plugin that doesn't depend on your theme.
  • The structured data also helps AI engines understand your site's hierarchy, which supports GEO.
A breadcrumb trail and its structured dataHomeCategoryThis postBreadcrumbList JSON-LD → shown in search results

What breadcrumbs are and why they matter

Breadcrumbs are the small navigational trail — usually something like 'Home › Guides › This article' — that shows where the current page sits within your site. They do three useful jobs at once: they help readers orient themselves and move up a level, they give search engines an explicit map of your site's hierarchy, and Google can display the trail in the search result instead of a raw URL.

For AI search, the same hierarchy signal helps an engine understand how a page relates to the rest of your site — which topic cluster it belongs to and how specific it is. That structural context is part of what makes content easier to place and cite.

Where breadcrumbs come from on WordPress

WordPress core does not output breadcrumbs by itself. In practice they come from one of three places: your theme (many classic themes include them, but a lot of modern block/FSE themes do not), a large SEO plugin (which bundles a breadcrumb feature among many others), or a dedicated breadcrumb plugin.

This is why breadcrumbs so often disappear when people switch to a lightweight block theme — the feature lived in the old theme. If you want breadcrumbs that survive a theme change, a theme-independent plugin is the safer choice.

How to add breadcrumbs the right way

Whichever route you choose, aim for the same outcome:

  1. Show a visible trail on posts, pages and archive pages — not just the home page.
  2. Output BreadcrumbList JSON-LD alongside it, following Google's expected format (omit the URL on the current, last item).
  3. For posts filed under several categories, pick one 'primary' category so the trail is consistent.
  4. Validate the result with Google's Rich Results Test to confirm the BreadcrumbList is detected.
  5. Place it automatically above your content, or drop it in with a block or shortcode where you want it.

Breadcrumbs on block (FSE) themes

Block themes are fast and flexible, but the trade-off is that convenience features like breadcrumbs are frequently missing. Because a block theme builds pages from blocks and patterns, the cleanest fix is a plugin that generates the trail from WordPress's own data rather than relying on theme support — so it works no matter which theme is active.

PressHangar Breadcrumbs does exactly this: a theme-independent trail with BreadcrumbList JSON-LD on by default, available as automatic insertion, a block, or a shortcode, plus a schema-only mode. It also includes simple noindex control for low-value archives, which pairs naturally with getting your hierarchy right.

Frequently asked questions

Do breadcrumbs actually help SEO?
They help indirectly. They improve navigation and internal linking, give search engines a clear hierarchy, and — with BreadcrumbList structured data — can produce the breadcrumb display in search results, which can improve how your listing looks.
My theme already has breadcrumbs. Do I need a plugin?
Not necessarily — but check two things: whether it outputs BreadcrumbList structured data (not just visible links), and whether you would lose breadcrumbs if you changed themes. If either is a concern, a theme-independent plugin is more durable.
My block theme has no breadcrumbs. What now?
Use a plugin that builds the trail from WordPress query data rather than theme support, so it works on any theme. Make sure it also emits BreadcrumbList JSON-LD, and validate it with Google's Rich Results Test.

Related guides

All guides