Breadcrumb Block Filters

๐ **Source:** [Breadcrumb Block Filters](https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/)
> [!note]+ Document Notes
> tags: #wordpress #gutenberg #breadcrumbs #filters #blocks
> author: Nik Tsekouras
> source: Make WordPress Core
> reference: https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/
> date created: 2024-12-19 16:30
>
> # ๐ท๏ธ Title: Breadcrumb block filters
>
<!-- deep-read:sections start -->
## ๐งฐ Action Inbox
- [H1] Implement breadcrumb filters in theme โ test with block_core_breadcrumbs_items for custom shop navigation #wordpress
- [H2] Configure taxonomy preferences โ use block_core_breadcrumbs_post_type_settings for product categories #taxonomy
- [H3] Review security implications โ understand allow_html parameter and wp_kses_post() sanitization #security
## ๐งญ Table of Contents
- [[#๐ Summary]]
- [[#๐ Main Content]]
- [[#๐๏ธ Notes]]
- [[#๐ References]]
- [[#๐ฃ๏ธ Paraphrase]]
- [[#๐ฐ Newsletter]]
- [[#โ
Action Items]]
- [[#๐งช Hypotheses]]
- [[#๐ Methodology]]
- [[#โ Questions]]
- [[#๐ฎ Future Research]]
- [[#๐ก Implications]]
- [[#๐ง Learning Styles Assessment]]
- [[#๐ Accessibility Assessment]]
- [[#๐ DEIB Assessment]]
- [[#โ
Logical Validity]]
- [[#๐ก๏ธ DARVO Analysis]]
- [[#๐ฏ Conclusion]]
### ๐ References
- [Breadcrumb block filters](https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/)
- [Gutenberg PR #74169](https://github.com/WordPress/gutenberg/pull/74169)
- [Gutenberg PR #73283](https://github.com/WordPress/gutenberg/pull/73283)
- [Gutenberg PR #74170](https://github.com/WordPress/gutenberg/pull/74170)
## ๐ Summary
- WordPress 7.0 introduces a new Breadcrumbs block with two developer filters for customization
- The block can be placed in theme headers and automatically reflects site navigation hierarchy
- Two filters control breadcrumb trail output and taxonomy/term selection for posts
- Developers can modify, add, or remove breadcrumb items and configure which taxonomies appear
- The feature addresses complex scenarios with multiple taxonomies and terms per post
## ๐ Main Content
WordPress 7.0 introduces a new Breadcrumbs block that provides automatic navigation hierarchy display. The block is designed to be placed once (typically in a theme's header) and dynamically reflects the current page's position in the site structure.
Two new filters give developers precise control over breadcrumb output:
**block_core_breadcrumbs_items** allows modification of the complete breadcrumb trail before rendering. Each breadcrumb item contains a label, optional URL, and optional HTML allowance setting with proper sanitization.
**block_core_breadcrumbs_post_type_settings** handles complex taxonomy scenarios where posts have multiple categories, tags, or custom taxonomy terms. This filter determines which taxonomy and specific terms appear in breadcrumb trails for non-hierarchical post types or when "Prefer taxonomy terms" is enabled.
The implementation includes robust fallback behavior: if preferred taxonomies don't exist or lack assigned terms, the system falls back to the first available taxonomy with terms. Similarly, if preferred terms aren't assigned, it uses the first available term.
## ๐๏ธ Notes
#### [H1] New Breadcrumbs block introduction
- Key idea: WordPress 7.0 adds a Breadcrumbs block for automatic navigation hierarchy display
- Evidence: "WordPress 7.0 introduces a new Breadcrumbs block that can be placed once โ such as in a theme's header โ and automatically reflects the site's navigation hierarchy"
#### [H1] Two developer filters available
- Key idea: Two filters provide comprehensive control over breadcrumb trail customization
- Evidence: "Two filters provide developers with control over the breadcrumb trail output"
#### [H2] block_core_breadcrumbs_items filter structure
- Key idea: This filter modifies the final breadcrumb trail with three item properties
- Evidence: "Each item is an array with three properties: label (string), an optional url (string), an optional allow_html (bool)"
#### [H2] HTML sanitization and security
- Key idea: The allow_html parameter controls HTML processing with proper sanitization
- Evidence: "When true, the label will be sanitized with wp_kses_post(), allowing only safe HTML tags. When false or omitted, all HTML will be escaped with esc_html()"
#### [H2] Custom breadcrumb item example
- Key idea: Developers can prepend custom items like shop navigation
- Evidence: "array_unshift( $breadcrumb_items, array( 'label' => __( 'Shop', 'myplugin' ), 'url' => home_url( '/shop/' ) ) )"
#### [H2] block_core_breadcrumbs_post_type_settings purpose
- Key idea: This filter handles complex taxonomy scenarios with multiple terms
- Evidence: "When a post type has multiple taxonomies or when a post is assigned to multiple terms within a taxonomy, there could be numerous ways to construct the breadcrumbs trail"
#### [H3] Filter applies to specific post types
- Key idea: The taxonomy filter only affects non-hierarchical post types or when taxonomy preference is enabled
- Evidence: "It applies to non-hierarchical post types (e.g., posts, products) or hierarchical post types when the block's 'Prefer taxonomy terms' setting is enabled"
#### [H3] Three filter parameters available
- Key idea: The taxonomy filter receives settings array, post type, and post ID parameters
- Evidence: "The filter receives three parameters: $settings (array), $post_type (string), $post_id (int)"
#### [H3] Taxonomy and term configuration
- Key idea: Settings array can specify taxonomy slug and preferred term slug
- Evidence: "taxonomy (string) โ taxonomy slug to use for breadcrumbs. term (string) โ term slug to prefer when the post has multiple terms"
#### [H2] Robust fallback behavior
- Key idea: System provides multiple fallback levels when preferred options aren't available
- Evidence: "If the preferred taxonomy doesn't exist or has no terms assigned, fall back to the first available taxonomy with terms assigned"
#### [H3] Post-type specific configuration example
- Key idea: Different post types can have different taxonomy preferences
- Evidence: "if ( $post_type === 'post' ) { $settings['taxonomy'] = 'category'; } if ( $post_type === 'product' ) { $settings['taxonomy'] = 'product_tag'; }"
#### [H3] Per-post customization capability
- Key idea: Breadcrumbs can be customized for individual posts using post ID
- Evidence: "add_filter( 'block_core_breadcrumbs_post_type_settings', function ( $settings, $post_type, $post_id ) { $terms = get_the_terms( $post_id, 'category' ); }"
## ๐ References
- [Make WordPress Core](https://make.wordpress.org/core/)
- [Gutenberg PR #74169](https://github.com/WordPress/gutenberg/pull/74169)
- [Gutenberg PR #73283](https://github.com/WordPress/gutenberg/pull/73283)
- [Gutenberg PR #74170](https://github.com/WordPress/gutenberg/pull/74170)
- [WordPress Codex - Plugin API Hooks](https://codex.wordpress.org/Plugin_API/Hooks)
## ๐ฃ๏ธ Paraphrase
- WordPress 7.0 adds a new Breadcrumbs block that can be placed in themes to automatically show navigation hierarchy
- Two filters let developers customize breadcrumb output and control which taxonomy terms appear for posts
- The system includes smart fallbacks when preferred taxonomies or terms aren't available
## ๐ฐ Newsletter
๐ **New Breadcrumbs Block Coming in WordPress 7.0**
Great news for theme developers! WordPress 7.0 introduces a powerful new Breadcrumbs block that automatically reflects your site's navigation hierarchy. Just place it once in your header template, and it dynamically updates based on the current page.
**What's New:**
- Automatic breadcrumb generation for any site structure
- Two developer filters for complete customization control
- Smart handling of complex taxonomy scenarios
- Built-in security with proper HTML sanitization
**Practical Benefits:**
- Reduce custom breadcrumb code in themes
- Better user navigation experience
- Flexible taxonomy handling for WooCommerce and custom post types
- Per-post customization capabilities
This is particularly valuable for e-commerce sites and content-heavy WordPress installations with complex category structures.
Resources: [Learn WordPress](https://learn.wordpress.org/), [Developer Docs](https://developer.wordpress.org/), [WP-CLI](https://wp-cli.org/)
## โ
Action Items
#### WordPress
- Core: Test breadcrumb block integration with existing theme structures and navigation patterns
- Themes: Update theme review guidelines to include breadcrumb block recommendations and best practices
- Documentation: Create comprehensive guides for both filters with real-world e-commerce and blog examples
- Community: Develop breadcrumb block workshops for WordCamp theme development sessions
## ๐งช Hypotheses
- Theme developers will adopt breadcrumb blocks faster than custom breadcrumb implementations due to reduced code complexity
- E-commerce sites using WooCommerce will benefit most from the taxonomy filtering capabilities
- Sites with complex category hierarchies will see improved user navigation metrics with proper breadcrumb implementation
- The HTML sanitization approach will prevent security issues while maintaining design flexibility
### ๐ Methodology
- A/B testing comparing custom breadcrumb implementations vs. the new block for development time and maintenance
- User experience studies measuring navigation behavior before and after breadcrumb block implementation
- Security analysis of wp_kses_post() sanitization effectiveness with various HTML input attempts
### โ Questions
- How will the breadcrumb block perform with deeply nested category hierarchies (10+ levels)?
- Can the taxonomy filter system handle custom post types with 5+ custom taxonomies efficiently?
- Will theme developers need additional training resources for complex filter implementations?
### ๐ฎ Future Research
- Investigation into breadcrumb SEO impact and structured data integration possibilities
- Analysis of accessibility improvements for screen readers with standardized breadcrumb markup
- Exploration of breadcrumb block integration with popular page builders and theme frameworks
### ๐ก Implications
- Practice: Theme developers can remove custom breadcrumb code and use standardized block implementation
- Policy: Theme review guidelines may need updates to encourage breadcrumb block adoption over custom solutions
- Security: Proper HTML sanitization reduces XSS risks in breadcrumb implementations
- Education: Developer training materials need updates covering both filters and security considerations
- Funding: Reduced development time for breadcrumb features allows budget allocation to other theme improvements
### ๐ง Learning Styles Assessment
Reading level estimate: 12th Grade (technical documentation with code examples)
#### ๐ Visual learners
- Present: Code examples with syntax highlighting, block placement screenshot in header
- Improve: Flow diagrams showing fallback behavior, taxonomy selection decision trees
#### ๐ Aural learners
- Present: None identified in current documentation
- Improve: Audio walkthrough of filter implementation, podcast explaining use cases
#### ๐ฃ๏ธ Verbal learners
- Present: Clear definitions of taxonomy, breadcrumb trail, hierarchical post types
- Improve: Analogies comparing breadcrumbs to physical navigation, story examples from e-commerce
#### ๐งฉ Kinesthetic learners
- Present: Step-by-step code examples, hands-on filter implementation
- Improve: Interactive playground for testing different taxonomy configurations
#### ๐ง Logical learners
- Present: Systematic filter parameter documentation, logical fallback sequence
- Improve: Decision matrix for choosing between filters, performance impact metrics
#### ๐งโ๐คโ๐ง Social learners
- Present: Developer community context via Make WordPress Core
- Improve: Discussion forums for sharing implementation patterns, collaborative examples
#### ๐งโโ๏ธ Solitary learners
- Present: Self-contained code examples, complete filter documentation
- Improve: Self-assessment checklist for implementation, troubleshooting guide
#### ๐ฟ Naturalistic learners
- Present: Organic growth of breadcrumb trails reflecting site structure
- Improve: Ecosystem thinking about breadcrumbs in overall site navigation
### ๐ Accessibility Assessment
#### Screen reader semantics
- Present: Breadcrumb navigation landmark, proper heading structure in documentation
- Improve: ARIA breadcrumb role documentation, semantic markup examples
#### Keyboard navigation
- Present: Standard block editor keyboard support
- Improve: Keyboard navigation examples for breadcrumb links
#### Contrast and readability
- Present: Standard WordPress admin color scheme compliance
- Improve: Frontend breadcrumb styling recommendations for sufficient contrast
#### Text resizing and reflow
- Present: Responsive block editor interface
- Improve: Mobile breadcrumb display guidance, text wrapping recommendations
#### Media and captions
- Present: Screenshot has descriptive caption
- Improve: Alt text for code screenshots, video demonstrations with captions
#### Forms and interactions
- Present: Standard WordPress form patterns
- Improve: Error handling examples for invalid taxonomy configurations
#### Standards reference
- Maps to WCAG 2.2 AA navigation consistency and location identification requirements
### ๐ DEIB Assessment
#### Cultural breadth
- Present: English-only documentation and examples
- Improve: Multi-language breadcrumb examples, internationalization guidance
#### Inclusive language
- Present: Technical terms are well-defined, gender-neutral pronouns
- Improve: Plain language summaries for complex filter concepts
#### Neurodiversity support
- Present: Structured documentation with clear headings, code blocks separated from text
- Improve: Visual indicators for code vs. explanation, consistent formatting
#### Representation
- Present: Technical focus without specific demographic representation
- Improve: Diverse use case examples (small business, enterprise, nonprofit)
#### Psychological safety
- Present: Professional, helpful tone in technical documentation
- Improve: Beginner-friendly language options, "no stupid questions" framing
### โ
Logical Validity
#### Strong reasoning
- Deductive strength: Filter documentation follows logical parameter โ behavior โ outcome structure
- Inductive strength: Examples progress from simple to complex use cases appropriately
- Causal reasoning: Clear cause-effect relationships between filter settings and breadcrumb output
- Analogical strength: Limited analogies used, mostly direct technical explanations
#### Fallacies
- No significant logical fallacies identified in technical documentation
- Appeals to authority appropriate (referencing WordPress Core team decisions)
#### Tone of voice
- Overall tone: Professional, technical, instructional with clear examples and proper attribution to contributors
### ๐ก๏ธ DARVO Analysis
- Deny: No denial patterns present in technical documentation
- Attack: No attacks on critics or alternative approaches
- Reverse victim/offender: Not applicable to technical documentation
- Emotional cues and rhetoric: Neutral technical tone without manipulative language
## ๐ฏ Conclusion
The new Breadcrumbs block in WordPress 7.0 represents a significant improvement in navigation standardization, offering developers powerful customization through two well-designed filters while maintaining security and performance. Theme developers should prepare to integrate these filters for enhanced user experience, particularly in e-commerce and content-rich sites with complex taxonomies. The robust fallback system and per-post customization capabilities make this a valuable addition to the WordPress block ecosystem.
## ๐งฑ Refactor Appendix
### ๐ Literature Split Pad
Purpose: Stage CEE units that become Literature notes.
Split level: H3
### [H1] WordPress introduces standardized breadcrumb navigation
> [!quote] [Breadcrumb block filters](https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/) by [[Nik Tsekouras]] via [[Make WordPress Core]]. Published 2026-03-04. Accessed 2024-12-19.
> "WordPress 7.0 introduces a new Breadcrumbs block that can be placed once and automatically reflects the site's navigation hierarchy."
Enables theme developers to implement standardized navigation without custom code.
[view highlight](https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/#H1) #xref #articleseed ID:rw_breadcrumb_block_intro
### [H2] Two filters control breadcrumb customization
> [!quote] [Breadcrumb block filters](https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/)
> "Two filters provide developers with control over the breadcrumb trail output."
block_core_breadcrumbs_items and block_core_breadcrumbs_post_type_settings offer comprehensive customization.
[view highlight](https://make.wordpress.org/core/2026/03/04/breadcrumb-block-filters/#H2) #
<!-- deep-read:sections end -->
๐ **Full text:** ![[Full Document Contents/Articles/Breadcrumb Block Filters|Breadcrumb Block Filters, make.wordpress.org]]
## Highlights
- an optional `allow_html` (bool) โ whether to allow HTML in the label. When `true`, the label will be sanitized with `wp_kses_post()`, allowing only safe HTML tags. When `false` or omitted, all HTML will be escaped with `esc_html()`. ([View Highlight](https://read.readwise.io/read/01kkvgheqj8qnjgbkc4fgfrnvs))
- Tags: ๐ป ai highlighted