Out of the box I think that the WooCommerce breadcrumb menu is not very user friendly. The default navigation is set to:
home > product category > product
However I think in more use cases it should be :
home > all products > product category > product
There is an easy way to change this, however it will say :
home > shop > product category > product
I thought it would be easy to change it to say “all” or “all products”. But I couldn’t find the answer in the WooCommerce documentation. So I thought I might need to do a bit of PHP to overwrite it, but I couldn’t even find the answer in Stack Exchange or Stack Overflow.
But after clicking around I found the no-code solution. Which I am documenting for my own reference and for someone else like me trying to find the answer. If you think there is a better or easier way please leave a comment with a link to share it.
Set up “All Products” page
The first step is to set up the a page which will show all of your products and this is done using the WooCommerce settings by allocating “-shop page” to a page in your “pages” list.
If you understand WP theme files this is to create a type of “archive page” template for the products added in the WooCommerce plugin.
If you want to change the allocation of the “shop page” then this is done in the WooCommerce Settings:
WooCommerce > Settings > Products > Shop page, shows the static page in drop down
Editing the Breadcrumb
Woocommerce > Settings > Products
Under Shop page there is a Hyperlink “product permalinks”
This is the default setting which will show the breadcrumb as:
home > product category > product
which looks like this:
However the “home page” does not show an index page of “all products” and so it makes more sense to change this to include the “shop” page aka the archive page of all products.
To do this there is an option to choose “Shop base with category”:
Which will display the breadcrumb like this:
Change “Shop” to “All Products”
Change this under the “page” quick edit
page > quick edit > title
Change the title to something that makes more sense in the breadcrumb menu.
So now the breadcrumb looks like this:
However! This has not changed the title in the meta data, and so currently the link looks like this:
domainURL/shop/product-category/product-name
Another issue is that the page showing “all products” has the title of “shop”.
Change the heading of “Shop Page”
To change the title of the page “all-products” to “all products” it is usual to change in the page settings.
However as this template is a “woocommerce” template this has to be done in the “customise” settings instead.
Customise > WooCommerce > Shop Kit Settings > Shop Page Title