How to Display Multiple Taxonomies in Breadcrumb NavXT Breadcrumbs
Content
Many WordPress users with complex content structures run into a common challenge: they need their breadcrumbs to display a path through multiple taxonomies, not just one. A user might want a breadcrumb trail like Home > Category > Store > Product, but find that Breadcrumb NavXT only shows one taxonomy by default.
This article explains why this happens and explores the most common solutions and workarounds based on community discussions.
Why Breadcrumb NavXT Doesn't Show Multiple Taxonomies by Default
The core issue is not a limitation of the plugin itself, but a fundamental aspect of how WordPress structures data. As explained by the Breadcrumb NavXT team in multiple support threads, WordPress does not provide a native mechanism to establish a direct parent-child relationship between terms from two different taxonomies.
For example, you cannot set a "Store" term from a "store" taxonomy to be the child of a "Category" term from a "category" taxonomy. Because this relationship does not exist in the database, Breadcrumb NavXT has no way to automatically build a hierarchical path between them. The plugin is designed to follow the explicit hierarchies that WordPress understands.
Common Scenarios and Recommended Solutions
Based on the sample support threads, here are the most frequent scenarios and how to address them.
Scenario 1: You Have a Single, Deeply Hierarchical Taxonomy
Problem: Your custom taxonomy has four levels, but the breadcrumb only shows the first two.
Solution: This is often a content assignment issue, not a plugin bug. The Breadcrumb NavXT team advises that for hierarchical taxonomies, you should only assign a post to the most specific (deepest) term. The post will automatically be an implicit member of all parent terms above it. If you explicitly assign it to a term higher in the chain, the plugin may stop traversing the hierarchy early. Ensure your post is only assigned to the Level 4 term, and the full hierarchy (Level 1 > Level 2 > Level 3 > Level 4) should appear.
Scenario 2: You Want to Display Terms from Two Independent Taxonomies
Problem: You need a path like Home > Taxonomy 1 > Taxonomy 2 > Post but the two taxonomies have no built-in relationship.
Solution: This is the most complex scenario. Out-of-the-box, Breadcrumb NavXT cannot support this because WordPress lacks the necessary relational structure. The suggested solutions are more advanced:
- Use a Single Hierarchical Taxonomy: If possible, combine your taxonomies into one hierarchy. For instance, make "Taxonomy 2" a child term of "Taxonomy 1".
- Custom Development (Filter/Hook): This requires modifying the breadcrumb trail manually using WordPress hooks. As mentioned in the threads, you can hook into the
bcn_after_fillaction. Within this function, you can access thebcn_breadcrumb_trail->trailarray and inject a new breadcrumb object representing your second taxonomy in the correct position. This is a developer-level task. - Modify Term Links: If your goal is to have a taxonomy term link to a standard page instead of an archive page, you can use the
term_linkfilter to override the URL thatget_term_link()returns.
Scenario 3: You Want a Taxonomy Label as a Prefix
Problem: On a taxonomy archive page, you want Home > Services > Security instead of just Home > Security.
Solution: This also requires a programmatic solution. You can use the same bcn_after_fill hook mentioned above to create a new breadcrumb for "Services" and insert it into the trail before the actual term.
Conclusion and Key Takeaway
The behavior of Breadcrumb NavXT is dictated by the relationships defined within your WordPress installation. It is built to be performant and follows the first valid hierarchy it finds for a post type.
For most users wanting to show multiple taxonomies, the answer lies in restructuring content into a single hierarchy or accepting the default behavior. For those with specific, advanced requirements, custom code using WordPress filters and the plugin's hooks is the path forward. Unfortunately, without defining these relationships in code, what many users perceive as a simple feature is, according to the plugin's author, "the realm of an add-on plugin."
Related Support Threads Support
-
Add two taxonomies to hierarchy?https://wordpress.org/support/topic/add-two-taxonomies-to-hierarchy/
-
Custom Taxonomy last level not showinghttps://wordpress.org/support/topic/custom-taxonomy-last-level-not-showing/
-
Put all taxonomies in breadcrumbshttps://wordpress.org/support/topic/put-all-taxonomies-in-breadcrumbs/
-
Change archive pages to existing onehttps://wordpress.org/support/topic/change-archive-pages-to-existing-one/
-
Main Taxonomy with Custom post typehttps://wordpress.org/support/topic/main-taxonomy-with-custom-post-type/
-
CPT and two taxonomieshttps://wordpress.org/support/topic/cpt-and-two-taxonomies/
-
Adding a "prefix" to taxonomyhttps://wordpress.org/support/topic/adding-a-prefix-to-taxonomy/
-
Custom Taxonomy Depthhttps://wordpress.org/support/topic/custom-taxonomy-depth/
-
Include 2 Taxonomies in Breadcrumbshttps://wordpress.org/support/topic/include-2-taxonomies-in-breadcrumbs/
-
Create Custom Taxonomies?https://wordpress.org/support/topic/create-custom-taxonomies/
-
Display Multiple taxonomies/categorieshttps://wordpress.org/support/topic/display-multiple-taxonomiescategories/
-
Choose dinamically the taxonomy of the path in single.phphttps://wordpress.org/support/topic/choose-dinamically-the-taxonomy-of-the-path-in-singlephp/