Sometimes we inherit old sites that clients need help with, but weren’t built by us. And often they come with lots of old, outdated and even deprecated plugins. Clients often just want to fix the glaring issues, so unless an old plugin poses a security risk, we’ll let it keep running.
But sometimes they just stop working, and here’s one example of that:
We inherited a site that was using the old and retired Yoast Breadcrumbs plugin. We are aware that Yoast’s superior WordPress SEO plugin includes breadcrumb functionality, but this site was also running on the Thesis framework(v1.8) and the old Breadcrumbs Plugin has direct integration with Thesis. This is handy since, as you may know, Thesis sites need special non-standard WordPress attention.
In addition, we were working on an “if it ain’t broke, don’t fix it” basis.
Problems arose though when we created a custom post type for the client for their Newsletters, and the breadcrumb functionality broke.
The breadcrumbs looked like this: Home > Archives > Newsletter December 2014. Which was the correct structure.
However, the breadcrumb for “Archives” and “Newsletter December 2014” linked to the same page, the single item, Newsletter December 2014. Uh oh. I wanted the Archives breadcrumb to go to the… wait for it… Newsletter Archive, and not the single item.
It was broke, so it was time to fix it by removing the Breadcrumbs plugin, and replacing it with the one, the only, WordPress SEO plugin. Just like Doctor Yoast instructed.
I then enabled Breadcrumbs from the SEO > Internal Links settings:
For any site to feature Yoast’s breadcrumbs, you need to add code to the theme files. But Thesis is not a regular theme and therefore the code snippet needs to use a Thesis hook. So you add the breadcrumbs to Thesis themes by adding the following code to custom-functions.php (source):
1 2 3 4 5 6 7 8 9 |
// YOAST BREADCRUMBS function yoast_crumbs() { if (is_single() || is_page() ) { if ( function_exists('yoast_breadcrumb') ) { yoast_breadcrumb('<p id="breadcrumbs">','</p>'); } } } add_action('thesis_hook_before_headline', 'yoast_crumbs'); |
Voila, that worked! Breadcrumb heaven. Thanks Yoast 🙂
P.S. The breadcrumbs generated by Yoast’s WordPress SEO plugin are full of rich snippet semantic data. This is really helpful for SEO purposes. More on that and the other amazing “hidden” features in the WordPress SEO plugin in Miriam’s post 6 reasons Yoast’s WordPress SEO plugin is even more awesome then you realize.