Closed LeBaux closed 1 year ago
Hi @LeBaux,
The SEO Framework makes use of Google's Structured Data type Breadcrumblist.
So:
I hope this explains the lot! Cheers :)
Edit: Here it is in effect:
Thank you for detailed clarification - this thing is simply great, since sometimes I am making super minimal themes where breadcrumbs are visual pollution and pain to deal with.
When the time for upsell comes (I am pretty sure it will) you should use this as a selling point when comparing to other popular SEO plugins.
I was looking over the code, and I didn't see a good way to add this. What would you think of being able to customize the breadcrumb title to be a bit shorter?
I'm looking at LONG breadcrumbs that read something like "Home > Example page all about Kentucky with a long title > Example page about Louisville Kentucky with an even longer title"
In my current CMS I have a breadcrumb specific title like "Home > Kentucky > Louisville" which keeps the breadcrumbs on pages with long titles nice and readable. The original title is still in the HTML under the "title" attribute on the link, so you see the full title on hover as well.
This plugin seems to work, but I'd rather have something officially part of The SEO Framework: https://github.com/GaryJones/genesis-single-breadcrumbs The plugin saves a shortened breadcrumb under '_genesis_single_breadcrumbs_title' and using that if available. Seems like it would be straight forward to add on something similar.
Thoughts?
Hi @successamp,
The Genesis breadcrumbs are visible (painted) for the user. Whereas the ones from TSF are generated for Search Engines specifically through JSON-LD markup.
i.e. HTML:
<div class="breadcrumb" itemscope="" itemtype="http://schema.org/BreadcrumbList">
<span class="breadcrumb-link-wrap" itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem">
<a href="https://theseoframework.com/" itemprop="item">
<span itemprop="name">Home</span>
</a>
</span>
<span aria-label="breadcrumb separator">/</span>
<span class="breadcrumb-link-wrap" itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem">
<a href="https://theseoframework.com/category/changelog/" itemprop="item">
<span itemprop="name">Changelog</span>
</a>
</span>
<span aria-label="breadcrumb separator">/</span>
2.8.2 – Immaculated Perception
</div>
...and JSON-LD:
{
"@context":"http:\/\/schema.org",
"@type":"BreadcrumbList",
"itemListElement":[
{
"@type":"ListItem",
"position":1,
"item":{
"@id":"https:\/\/theseoframework.com\/",
"name":"The SEO Framework",
"image":"https:\/\/theseoframework.com\/wp-content\/uploads\/2015\/09\/cropped-banner-1544x500.png"
}
},
{
"@type":"ListItem",
"position":2,
"item":{
"@id":"https:\/\/theseoframework.com\/category\/changelog\/",
"name":"Changelog",
"image":""
}
},
{
"@type":"ListItem",
"position":3,
"item":{
"@id":"https:\/\/theseoframework.com\/changelog\/2-8-2-immaculated-perception\/",
"name":"2.8.2 – Immaculated Perception",
"image":"https:\/\/theseoframework.com\/wp-content\/uploads\/2015\/09\/cropped-banner-1544x500.png"
}
}
]
}
As you can see, the JSON-LD markup adds quite a lot more data. This data must be as-provided, otherwise conflicts arise; which could get your site penalized.
I'm unsure of the implications, but if anything, you're free to alter the breadcrumb code to test this out yourself. Just be aware of cloaking, as you're then feeding data that isn't abstracted from or parallel to the actual output.
For now, I'm not going to touch this part of the software: it works and Google doesn't complain 😄.
Currently, I'm not providing a full list of why we couldn't or why we shouldn't, but the gist is:
P.S. forgive my reluctance, I'm very tired from my neighbors' kitchen rebuild (7AM-12PM drilling... 💤).
No problem @sybrew. I appreciate the response :)
I an setting up a new site and ask here as others may find it helpful. I use https://wordpress.org/plugins/breadcrumb-trail/ from Justin Tadlock when I want breadcrumbs prominent (visible as navigation aid). Will this conflict with TSF breadcrumbs?
I should have searched further sooner (blushes) https://wordpress.org/support/topic/meta-descriptionbreadcrumbs-dont-work/ https://wordpress.org/support/topic/breadcrumbs-navxt-1/
They indeed shouldn't conflict 😄. Do take note that TSF's breadcrumb is prioritized, as it's spotted first.
Hi all.
In our situation, we do not use the categories for organisation purposes, for style of the content instead.
Thre is any way not to use the categories of the post as breadcrumbs route?
Now:
SiteName > Category > PostName
to
SiteName > PostName
But there is a problem I do not understand, since we have child post, I guess the correct working way would be:
SiteName > ParentPost > PostName
The Breadcrumb Trail plugin shows:
Home > ParentPostType > ParentPost > PostName
(ParentPostType here ends in an empty page too, so that's a break.
(I think, since each site works in a different way, a 100% automatic system may be a complicate problem)
Maybe it could be an easy fix by having an option in the settings page from where we can choose which elements of the array can be shown in the list. In our situation, we will deactivate the category from the list. I think it will simplify the process.
Also, since we use a wp multisite, it would be great if also there is a multisite setting where we can use site 1 of WordPress as first-level in the route like:
RootSiteName > SiteName > PostName
thanks
Hi @colomet
An overhaul of TSF breadcrumb is long overdue: For breadcrumbs, TSF expects non-hierarchical post types to have no hierarchical traits. It is why you can't have breadcrumbs for a category/parent/child structure... for now. Instead of adding an option, I want this to become automated fully. I don't like my users tweaking structured data.
As for Multisite support... what you're asking for is quite an edge-case, and I recommend looking towards custom development.
I'm locking this thread to new comments, for I am afraid we'll get off-topic real quickly; I don't believe there's anything more to add here that couldn't fit into #440. My plan is to convert "Documentation"-tagged threads into KB articles... eventually.
If you have any more questions, please follow https://tsf.fyi/support.
TSF v4.3.0+ will support breadcrumbs for all pages.
We will provide you with a shortcode (and block) to output that, but we first need options. The block and options may come at a later update.
For a follow-up and everything pertaining to this feature: #276.
Since the answers to this "Documentation" issue are no longer up-to-date, I'm closing it.
Coming from Yoast, breadcrumbs required little code modification, however in SEO Framework you can only enable/disable it in the backend.
(I am going into seemingly needless details here, however I am doing this for others potentially having the similar questions here)