Put [wpvis_breadcrumbs] where you want the trail: in a Shortcode block, in a template part of a block theme, or through do_shortcode() in a classic theme. It prints a trail such as Home › Guides › Pruning Tomatoes with no styling of its own, so your theme decides how it looks.
Before you start
The Breadcrumbs module is on by default; check it under WP Visibility → Settings → Modules. There is no settings section for breadcrumbs and no breadcrumb block of WP Visibility’s own. WordPress core ships its own Breadcrumbs block; use one or the other, not both.
Place it
On one page: add a Shortcode block and type [wpvis_breadcrumbs]. WordPress’s Shortcode block instructions, checked September 27, 2026.
On every post, block theme: open Appearance → Editor, edit the single post template, add a Shortcode block above the title, and save the template.
On every post, classic theme: in a child theme’s template, where the trail should print:
<?php echo do_shortcode( '[wpvis_breadcrumbs]' ); ?>
To change the separator, pass it: [wpvis_breadcrumbs separator="/"]. The default is your Title separator from the General section.
What it prints
<nav class="wpvis-breadcrumbs" aria-label="Breadcrumbs">
<ol>
<li><a href="https://your-site.com/">Home</a></li>
<li><span class="wpvis-breadcrumbs__sep" aria-hidden="true">–</span> <a href="https://your-site.com/category/garden/">Garden</a></li>
<li><span class="wpvis-breadcrumbs__sep" aria-hidden="true">–</span> <span aria-current="page">Pruning Tomatoes</span></li>
</ol>
</nav>
The separators are hidden from screen readers, and the current page is marked with aria-current. No CSS or JavaScript ships with it. A minimal style to start from:
.wpvis-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .4em; list-style: none; padding: 0; margin: 0; }
How the trail is built
| Page | Trail |
|---|---|
| Homepage | Home |
| A post | Home, then its first category and that category’s parents, then the post |
| A page | Home, then its parent pages, then the page |
| A custom post type entry | Home, the post type archive when the type has one, its first term, the entry |
| A category or tag | Home, parent terms, the term |
| Author, date, search, 404 | Home, then the author name, the date, “Search results for …”, or “Page not found” |
A post in several categories uses the first one WordPress returns. There is no primary category picker. “Home” is fixed text; developers can change any item with the wpvis_breadcrumbs filter.
The structured data
The Schema module prints a BreadcrumbList built from the same trail on every page except search results and the 404, whether or not you place the shortcode, and even with the Breadcrumbs module off. The shortcode only adds the visible trail. To check it, find BreadcrumbList in the page source or run the URL through the Rich Results Test.
Behavior checked against WP Visibility 2.10.3.