Fix Breadcrumbs markup ...

Discuss Search Engine Optimization in relation to Joomla! 3.x. This forum will also have discussions on SEF/SEO Joomla! 3.x extensions.

Moderator: General Support Moderators

Forum rules
Forum Rules
Absolute Beginner's Guide to Joomla! <-- please read before posting, this means YOU.
Forum Post Assistant - If you are serious about wanting help, you will use this tool to help you post.
Jim Holloman
Joomla! Intern
Joomla! Intern
Posts: 56
Joined: Thu Apr 25, 2013 4:05 am

Fix Breadcrumbs markup ...

Post by Jim Holloman » Fri Sep 20, 2019 6:18 am

Google Search Console has sent me a email for every one of my websites stating:
Fix Breadcrumbs markup for [website]

The details state [Missing field "item"]. I look at the code and it has [itemprop="item"]. I don't see anything wrong.

Has the Google Search Console acquired a 'bug'? Is anyone else seeing this? I have no idea what to do.

Grandmont
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Fri Sep 20, 2019 11:58 am

Re: Fix Breadcrumbs markup ...

Post by Grandmont » Fri Sep 20, 2019 12:17 pm

I have the same problem reported by Google Search Console. Also, "Missing field "itemListElement"."

Cpointcc
Joomla! Apprentice
Joomla! Apprentice
Posts: 31
Joined: Mon Jun 30, 2008 2:24 pm

Fix Breadcrumbs markups Emails from Google

Post by Cpointcc » Fri Sep 20, 2019 2:46 pm

Today I received about 50 emails from google with the following message:

Fix Breadcrumbs markup for "myxwebsite.com" (example url only)

Google systems show that your site is affected by 15 instances of Breadcrumbs markup issues. This means that your Breadcrumbs pages might not appear as rich results in Google Search.

Search Console has created a new report just for this rich result type. The new report enables you to identify, fix, and resubmit affected pages to Google so they can start appearing in Search Results with rich result features.

My question is this: isn't the templates already incorporating this?

If not, I will have to fix a lot of clients websites.

User avatar
nicky
Joomla! Apprentice
Joomla! Apprentice
Posts: 15
Joined: Mon Nov 27, 2006 11:57 am
Location: Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by nicky » Fri Sep 20, 2019 4:11 pm

Same here :(
Joomla Certified Administrator | Australia
WebSolutionZ.com.au - Digital solutions for business and community organisations

b4pjoe
Joomla! Apprentice
Joomla! Apprentice
Posts: 23
Joined: Sat Sep 05, 2009 10:14 pm

Re: Fix Breadcrumbs markup ...

Post by b4pjoe » Fri Sep 20, 2019 8:31 pm

Same here.

User avatar
reggaebkk
Joomla! Enthusiast
Joomla! Enthusiast
Posts: 113
Joined: Mon Jul 14, 2008 1:39 pm

Re: Fix Breadcrumbs markup ...

Post by reggaebkk » Sat Sep 21, 2019 1:55 am

Seems most my websites received the same email and nobody knows what it's about.

User avatar
Per Yngve Berg
Joomla! Master
Joomla! Master
Posts: 26117
Joined: Mon Oct 27, 2008 9:27 pm
Location: Akershus, Norway

Re: Fix Breadcrumbs markup ...

Post by Per Yngve Berg » Sat Sep 21, 2019 9:29 am

The error originates from the last item in the breadcrumps list that are not shown as a link.

The error goes away when Show Last Entry=No is set in the module's options.

User avatar
pe7er
Joomla! Master
Joomla! Master
Posts: 22322
Joined: Thu Aug 18, 2005 8:55 pm
Location: Nijmegen, The Netherlands
Contact:

Re: Fix Breadcrumbs markups Emails from Google

Post by pe7er » Sat Sep 21, 2019 10:06 am

There's a fix being made for it:
Fix microdata for the last breadcrumb item #26268
https://github.com/joomla/joomla-cms/pull/26268

It's needs to be tested by one person before it can be put in a Joomla update.
Maybe you could help out testing the patch?
If it gets in the next Joomla update, then you won't have to patch your client websites manually :)
Kind Regards,
Peter Martin, Global Moderator
https://db8.nl - Joomla specialist, Nijmegen, Nederland
Co-developer of d2 Content https://data2site.com/joomla-extensions/d2-content

Jim Holloman
Joomla! Intern
Joomla! Intern
Posts: 56
Joined: Thu Apr 25, 2013 4:05 am

Re: Fix Breadcrumbs markup ...

Post by Jim Holloman » Sat Sep 21, 2019 4:23 pm

Many thanks, Per Yngve Berg, for the discovery.

I think it would be nice if Google would not require the suppression of the last item in the Breadcrumb List to avoid the errors. If there is no link, then don't produce the error.

I spend a lot of time trying to satisfy Google's expectations; especially with structured data / micro data.

User avatar
Per Yngve Berg
Joomla! Master
Joomla! Master
Posts: 26117
Joined: Mon Oct 27, 2008 9:27 pm
Location: Akershus, Norway

Re: Fix Breadcrumbs markup ...

Post by Per Yngve Berg » Sat Sep 21, 2019 5:23 pm


User avatar
trogladyte
Joomla! Explorer
Joomla! Explorer
Posts: 400
Joined: Sat May 03, 2008 9:27 pm
Location: Phoenix, AZ
Contact:

Re: Fix Breadcrumbs markups Emails from Google

Post by trogladyte » Sat Sep 21, 2019 8:24 pm

Actually...

ChristineWk commented 10 days ago

"I have tested this item ✅ successfully on 035c38b"

If it's been tested successfully, when will the update be issued? I'm being bombarded by those emails too.
Ian Shere - Phoenix Website Design & Hosting
http://www.citruskiwi.com

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Sat Sep 21, 2019 9:49 pm

Thank you to everyone for this discussion. :)

I've never been a big fan of the standard J! breadcrumbs module.

Let's say you have a web-page where the breadcrumbs appear like this

You are here: Home › XYZ › ABC

When you submit this URL to GSC, the SERP, however, appears as

<domain-name> › XYZ

So, while the PR "appeases" GSC's tightening of the rules in connection with the schema, the result (as far as what appears in Google is concerned) is not exactly a particularly flattering experience. If other websites can do it "properly" why can't Joomla "out of the box"?

Microdata inclusions are for websites are relatively recent for and they're still evolving. Such features were absent (or severely lacking) in earlier versions of J! 3.x. It's taken a few years to catch up. I'm only saying that, until the standard J! breadcrumbs module is able to generate "pretty" microdata (in ways that other third-party extensions or other CMS-es have been doing for several years) then the standard J! breadcrumbs module, even with the fix, is a second-rate feature IMO.

So, no, I can't add my voice to the "tested satisfactorily" category. The PR hides the problem; it doesn't solve it.
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)

User avatar
Per Yngve Berg
Joomla! Master
Joomla! Master
Posts: 26117
Joined: Mon Oct 27, 2008 9:27 pm
Location: Akershus, Norway

Re: Fix Breadcrumbs markup ...

Post by Per Yngve Berg » Sat Sep 21, 2019 10:06 pm

I have some code that will satisfy Google, but the problem is that $item->link is empty.

Code: Select all

				<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" class="active">
					<span itemprop="item" itemprop="id" content="<?php echo $item->link; ?>">
						<span itemprop="name">
							<?php echo $item->name; ?>
						</span>
					</span>
					<meta itemprop="position" content="<?php echo $key + 1; ?>">
				</li>

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Sat Sep 21, 2019 11:22 pm

@Per: where would you add/change this code? Do you mean to replace lines 47-53 with your code?
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)

User avatar
Per Yngve Berg
Joomla! Master
Joomla! Master
Posts: 26117
Joined: Mon Oct 27, 2008 9:27 pm
Location: Akershus, Norway

Re: Fix Breadcrumbs markup ...

Post by Per Yngve Berg » Sun Sep 22, 2019 6:52 am

It's the "render last" starting at line 63.

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Sun Sep 22, 2019 5:57 pm

Sorry, @Per, but this doesn't work ... that is GSC shows an "invalid item"

Here is the entire default.php file (with your change included)

Code: Select all

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_breadcrumbs
 *
 * @copyright   Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;
?>
<div aria-label="<?php echo $module->name; ?>" role="navigation">
	<ul itemscope itemtype="https://schema.org/BreadcrumbList" class="breadcrumb<?php echo $moduleclass_sfx; ?>">
		<?php if ($params->get('showHere', 1)) : ?>
			<li>
				<?php echo JText::_('MOD_BREADCRUMBS_HERE'); ?>&#160;
			</li>
		<?php else : ?>
			<li class="active">
				<span class="divider icon-location"></span>
			</li>
		<?php endif; ?>

		<?php
		// Get rid of duplicated entries on trail including home page when using multilanguage
		for ($i = 0; $i < $count; $i++)
		{
			if ($i === 1 && !empty($list[$i]->link) && !empty($list[$i - 1]->link) && $list[$i]->link === $list[$i - 1]->link)
			{
				unset($list[$i]);
			}
		}

		// Find last and penultimate items in breadcrumbs list
		end($list);
		$last_item_key   = key($list);
		prev($list);
		$penult_item_key = key($list);

		// Make a link if not the last item in the breadcrumbs
		$show_last = $params->get('showLast', 1);

		// Generate the trail
		foreach ($list as $key => $item) :
			if ($key !== $last_item_key) :
				// Render all but last item - along with separator ?>
				<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
					<?php if (!empty($item->link)) : ?>
						<a itemprop="item" href="<?php echo $item->link; ?>" class="pathway">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</a>
					<?php else : ?>
						<span itemprop="name">
							<?php echo $item->name; ?>
						</span>
					<?php endif; ?>

					<?php if (($key !== $penult_item_key) || $show_last) : ?>
						<span class="divider">
							<?php echo $separator; ?>
						</span>
					<?php endif; ?>
					<meta itemprop="position" content="<?php echo $key + 1; ?>">
				</li>
			<?php elseif ($show_last) :
				// Render last item if reqd. ?>
			        <li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" class="active">
					<span itemprop="item" itemprop="id" content="<?php echo $item->link; ?>">
						<span itemprop="name">
							<?php echo $item->name; ?>
						</span>
					</span>
					<meta itemprop="position" content="<?php echo $key + 1; ?>">
				</li>			<?php endif; ?>
		<?php endforeach; ?>
	</ul>
</div>
Have I made your change incorrectly?
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)

User avatar
Per Yngve Berg
Joomla! Master
Joomla! Master
Posts: 26117
Joined: Mon Oct 27, 2008 9:27 pm
Location: Akershus, Norway

Re: Fix Breadcrumbs markup ...

Post by Per Yngve Berg » Sun Sep 22, 2019 6:03 pm

No, you have done it correctly. The problem is that $item->link is empty for the last item. It should have contained a link. That problem must be somewhere else in the code.

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Sun Sep 22, 2019 6:17 pm

Can you save me the time to figure out what you mean and post the whole file here, please?
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)

User avatar
Per Yngve Berg
Joomla! Master
Joomla! Master
Posts: 26117
Joined: Mon Oct 27, 2008 9:27 pm
Location: Akershus, Norway

Re: Fix Breadcrumbs markup ...

Post by Per Yngve Berg » Sun Sep 22, 2019 6:58 pm

Now it suddenly works! (<span itemprop="item" content="/lokalavdelinger/oslo">)

Code: Select all

<ul itemscope="" itemtype="https://schema.org/BreadcrumbList" class="breadcrumb">
					<li>
				Du er her: &nbsp;
			</li>
		
						<li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem">
											<a itemprop="item" href="/lokalavdelinger" class="pathway"><span itemprop="name">Lokalavdelinger</span></a>
					
											<span class="divider">
							<img src="/media/system/images/arrow.png" alt="">						</span>
										<meta itemprop="position" content="1">
				</li>
							<li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem" class="active">
					<span itemprop="item" content="/lokalavdelinger/oslo">
						<span itemprop="name">
							Oslo						</span>
					</span>
					<meta itemprop="position" content="2">
				</li>
				</ul>
Here is the file:

Code: Select all

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_breadcrumbs
 *
 * @copyright   Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;
?>
<div aria-label="<?php echo $module->name; ?>" role="navigation">
	<ul itemscope itemtype="https://schema.org/BreadcrumbList" class="breadcrumb<?php echo $moduleclass_sfx; ?>">
		<?php if ($params->get('showHere', 1)) : ?>
			<li>
				<?php echo JText::_('MOD_BREADCRUMBS_HERE'); ?>&#160;
			</li>
		<?php else : ?>
			<li class="active">
				<span class="divider icon-location"></span>
			</li>
		<?php endif; ?>

		<?php
		// Get rid of duplicated entries on trail including home page when using multilanguage
		for ($i = 0; $i < $count; $i++)
		{
			if ($i === 1 && !empty($list[$i]->link) && !empty($list[$i - 1]->link) && $list[$i]->link === $list[$i - 1]->link)
			{
				unset($list[$i]);
			}
		}

		// Find last and penultimate items in breadcrumbs list
		end($list);
		$last_item_key   = key($list);
		prev($list);
		$penult_item_key = key($list);

		// Make a link if not the last item in the breadcrumbs
		$show_last = $params->get('showLast', 1);

		// Generate the trail

		foreach ($list as $key => $item) :
			if ($key !== $last_item_key) :
				// Render all but last item - along with separator ?>
				<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
					<?php if (!empty($item->link)) : ?>
						<a itemprop="item" href="<?php echo $item->link; ?>" class="pathway"><span itemprop="name"><?php echo $item->name; ?></span></a>
					<?php else : ?>
						<span itemprop="name">
							<?php echo $item->name; ?>
						</span>
					<?php endif; ?>

					<?php if (($key !== $penult_item_key) || $show_last) : ?>
						<span class="divider">
							<?php echo $separator; ?>
						</span>
					<?php endif; ?>
					<meta itemprop="position" content="<?php echo $key + 1; ?>">
				</li>
			<?php elseif ($show_last) :
				// Render last item if reqd. ?>
				<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" class="active">
					<span itemprop="item" itemprop="id" content="<?php echo $item->link; ?>">
						<span itemprop="name">
							<?php echo $item->name; ?>
						</span>
					</span>
					<meta itemprop="position" content="<?php echo $key + 1; ?>">
				</li>
			<?php endif;
		endforeach; ?>
	</ul>
</div>

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Sun Sep 22, 2019 7:20 pm

Damned if I can make it work, @Per!

Code: Select all

				<div aria-label="breadcrumbs" role="navigation">
	<ul itemscope itemtype="https://schema.org/BreadcrumbList" class="breadcrumb">
					<li>
				You are here: &#160;
			</li>
		
						<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
											<a itemprop="item" href="/" class="pathway"><span itemprop="name">Home</span></a>
					
											<span class="divider">
							<img src="/media/system/images/arrow.png" alt="" />						</span>
										<meta itemprop="position" content="1">
				</li>
							<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
											<a itemprop="item" href="/blog" class="pathway"><span itemprop="name">Blog</span></a>
					
											<span class="divider">
							<img src="/media/system/images/arrow.png" alt="" />						</span>
										<meta itemprop="position" content="2">
				</li>
							<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" class="active">
					<span itemprop="item" itemprop="id" content="">
						<span itemprop="name">
							Prelude to the beginning						</span>
					</span>
					<meta itemprop="position" content="3">
				</li>
				</ul>
</div>
GSC reports an error (see screeshot).

Thanks for your time, even if I'm struggling with GSC: :laugh:
You do not have the required permissions to view the files attached to this post.
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)

StefanSTS
Joomla! Apprentice
Joomla! Apprentice
Posts: 19
Joined: Thu Jul 30, 2015 7:39 am

Re: Fix Breadcrumbs markup ...

Post by StefanSTS » Mon Sep 23, 2019 7:56 am

Hello,

I changed the code of default.php of mod_breadcrumbs to validate in case of a non link for the last item.
There are also two new switches that would need a setting in the xml file.
showShadowLink, default to 0, to not show the menu heading that does not come with a link.
showLastItemAsLink, defau.t to 0, to show the last item/active page as a link.

I have not tested all combinations, but it works for my case in the Google Structured Data Testing Tool.

I would be happy about comments to this.

Thanks
Stefan

EDIT: like before without showShadowLink

Code: Select all

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_breadcrumbs
 *
 * @copyright   Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;
?>
<div aria-label="<?php echo $module->name; ?>" role="navigation">
	<ul itemscope itemtype="https://schema.org/BreadcrumbList" class="breadcrumb<?php echo $moduleclass_sfx; ?>">
		<?php if ($params->get('showHere', 1)) : ?>
			<li>
				<?php echo JText::_('MOD_BREADCRUMBS_HERE'); ?>&#160;
			</li>
		<?php else : ?>
			<li class="active">
				<span class="divider icon-location"></span>
			</li>
		<?php endif; ?>

		<?php
		// Get rid of duplicated entries on trail including home page when using multilanguage
		for ($i = 0; $i < $count; $i++)
		{
			if ($i === 1 && !empty($list[$i]->link) && !empty($list[$i - 1]->link) && $list[$i]->link === $list[$i - 1]->link)
			{
				unset($list[$i]);
			}
		}

		// Find last and penultimate items in breadcrumbs list
		end($list);
		$last_item_key   = key($list);
		prev($list);
		$penult_item_key = key($list);

		// Make a link if not the last item in the breadcrumbs
		$show_last = $params->get('showLast', 1);

		// Generate the trail
		foreach ($list as $key => $item) :
			if ($key !== $last_item_key) :
				// Render all but last item - along with separator ?>
				<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
					<?php if (!empty($item->link)) : ?>
						<a itemprop="item" itemscope itemtype="http://schema.org/Thing" href="<?php echo $item->link; ?>" itemid="<?php echo $item->link; ?>" class="pathway">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</a>
					<?php else : ?>
						<span itemprop="item" itemscope itemtype="http://schema.org/Thing">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</span>
					<?php endif; ?>

					<?php if (($key !== $penult_item_key) || $show_last) : ?>
						<span class="divider">
							<?php echo $separator; ?>
						</span>
					<?php endif; ?>
					<meta itemprop="position" content="<?php echo $key + 1; ?>">
				</li>
			<?php elseif ($show_last) :
				// Render last item if reqd. ?>
				<li class="active" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
					<?php if ($params->get('showLastLink', 0)) : ?>
						<a itemprop="item" itemscope itemtype="http://schema.org/Thing" href="<?php echo JUri::getInstance(); ?>" itemid="<?php echo JUri::getInstance(); ?>">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</a>
					<?php else : ?>
						<span itemprop="item" itemscope itemtype="http://schema.org/Thing" itemid="<?php echo JUri::getInstance(); ?>">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</span>
					<?php endif; ?>
						<meta itemprop="position" content="<?php echo $key + 1; ?>">
					</li>
			<?php endif;
		endforeach; ?>
	</ul>
</div>

EDIT:
This one is with get('showShadowLink', 0)) to hide the menu heading without link. I would prefer this way.

Code: Select all

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_breadcrumbs
 *
 * @copyright   Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;
?>
<div aria-label="<?php echo $module->name; ?>" role="navigation">
	<ul itemscope itemtype="https://schema.org/BreadcrumbList" class="breadcrumb<?php echo $moduleclass_sfx; ?>">
		<?php if ($params->get('showHere', 1)) : ?>
			<li>
				<?php echo JText::_('MOD_BREADCRUMBS_HERE'); ?>&#160;
			</li>
		<?php else : ?>
			<li class="active">
				<span class="divider icon-location"></span>
			</li>
		<?php endif; ?>

		<?php
		// Get rid of duplicated entries on trail including home page when using multilanguage
		for ($i = 0; $i < $count; $i++)
		{
			if ($i === 1 && !empty($list[$i]->link) && !empty($list[$i - 1]->link) && $list[$i]->link === $list[$i - 1]->link)
			{
				unset($list[$i]);
			}
		}

		// Find last and penultimate items in breadcrumbs list
		end($list);
		$last_item_key   = key($list);
		prev($list);
		$penult_item_key = key($list);

		// Make a link if not the last item in the breadcrumbs
		$show_last = $params->get('showLast', 1);

		// Generate the trail
		foreach ($list as $key => $item) :
			if ($key !== $last_item_key) :
				// Render all but last item - along with separator ?>
				<?php if (!empty($item->link)) : ?>
					<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
						<a itemprop="item" itemscope itemtype="http://schema.org/Thing" href="<?php echo $item->link; ?>" itemid="<?php echo $item->link; ?>" class="pathway">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</a>
						<?php if (($key !== $penult_item_key) || $show_last) : ?>
							<span class="divider">
								<?php echo $separator; ?>
							</span>
						<?php endif; ?>
						<meta itemprop="position" content="<?php echo $key + 1; ?>">
					</li>
				<?php elseif ($params->get('showShadowLink', 0)) : ?>
					<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
						<span itemprop="item" itemscope itemtype="http://schema.org/Thing">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</span>
						<?php if (($key !== $penult_item_key) || $show_last) : ?>
							<span class="divider">
								<?php echo $separator; ?>
							</span>
						<?php endif; ?>
						<meta itemprop="position" content="<?php echo $key + 1; ?>">
					</li>
				<?php endif; ?>
			<?php elseif ($show_last) :
				// Render last item if reqd. ?>
				<li class="active" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
					<?php if ($params->get('showLastLink', 0)) : ?>
						<a itemprop="item" itemscope itemtype="http://schema.org/Thing" href="<?php echo JUri::getInstance(); ?>" itemid="<?php echo JUri::getInstance(); ?>">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</a>
					<?php else : ?>
						<span itemprop="item" itemscope itemtype="http://schema.org/Thing" itemid="<?php echo JUri::getInstance(); ?>">
							<span itemprop="name">
								<?php echo $item->name; ?>
							</span>
						</span>
					<?php endif; ?>
						<meta itemprop="position" content="<?php echo $key + 1; ?>">
					</li>
			<?php endif;
		endforeach; ?>
	</ul>
</div>

Jim Holloman
Joomla! Intern
Joomla! Intern
Posts: 56
Joined: Thu Apr 25, 2013 4:05 am

Re: Fix Breadcrumbs markup ...

Post by Jim Holloman » Mon Sep 23, 2019 6:06 pm

23 Sept. at 1357 hours EDT, USA

Did Google fix this?

I now get 1 error, [Missing field "item"] instead of the 120 errors I got last week.

I made no changes to the code.

I tested five sites. Four of them gave me the 1 error on Breadcrumbs and one of them had no errors.

Cpointcc
Joomla! Apprentice
Joomla! Apprentice
Posts: 31
Joined: Mon Jun 30, 2008 2:24 pm

Re: Fix Breadcrumbs markup ...

Post by Cpointcc » Mon Sep 23, 2019 6:19 pm

I too can confirm I am not NOT SEEING ERRORS any longer.

Maybe a Google snafu?

Jim Holloman
Joomla! Intern
Joomla! Intern
Posts: 56
Joined: Thu Apr 25, 2013 4:05 am

Re: Fix Breadcrumbs markup ...

Post by Jim Holloman » Mon Sep 23, 2019 6:35 pm

Well, I don't know what is going on.

I ran the crawl again on the sites. Some are once again producing hundreds of Breadcrumb Errors while the one that I tested last showed only one error (previously it had 17 errors). All test were done on the Live Sites within the last 15 minutes.

It appears that Google is making changes while I am testing. I am going to put this aside for 24 hours and then see what happens tomorrow.

In addition, looking at the chart that shows a vertical bar for each day, the number of errors for one site, http://savannahgavisitors.com/ varies by day:

Prior to 11 Sept. - No Errors
11 - No Errors
12 - 441
13 - 440
14 - 436
15 - 433
16 - 432
17 - 433
18 - 429
19 - 419
20 - 420
21 - 420
22 - 420
23 - 0 initially on the first pass and then 420 on the second pass

Makes no sense to me -- that the error count would vary by day when there were no changes made to the website.

Thomas-DAV
Joomla! Fledgling
Joomla! Fledgling
Posts: 3
Joined: Tue Jul 07, 2015 9:32 pm
Contact:

Re: Fix Breadcrumbs markup ...

Post by Thomas-DAV » Mon Sep 23, 2019 7:24 pm

I have the same issue on [ redacted ]
Does anyone know, when the next update will be published? Thanks.
Last edited by toivo on Mon Sep 23, 2019 11:31 pm, edited 1 time in total.
Reason: mod note: URL removed

StefanSTS
Joomla! Apprentice
Joomla! Apprentice
Posts: 19
Joined: Thu Jul 30, 2015 7:39 am

Re: Fix Breadcrumbs markup ...

Post by StefanSTS » Mon Sep 23, 2019 7:49 pm

Jim Holloman wrote:
Mon Sep 23, 2019 6:06 pm
Did Google fix this?
No. The issues still show for my test sites in Googles Structured Data Testing Tool.

It will probably not be solved by waiting for Google to accept bad code. It could be solved by testing the default.php for mod_breadcrumbs above.

StefanSTS
Joomla! Apprentice
Joomla! Apprentice
Posts: 19
Joined: Thu Jul 30, 2015 7:39 am

Re: Fix Breadcrumbs markup ...

Post by StefanSTS » Mon Sep 23, 2019 7:51 pm

Thomas-DAV wrote:
Mon Sep 23, 2019 7:24 pm
I have the same issue on https://www.weidener-huette.at
Does anyone know, when the next update will be published? Thanks.
Yes, Joomla 3.9.12 is rumored to be launched tomorrow. But since noone is testing the file above to get it merged into the next release, it won't be in there.

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Mon Sep 23, 2019 8:11 pm

Where did you see the rumoured release for J! 3.9.12 announcement, pls. Releases happen when releases happen and not because of some arbitrary timetable.
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)

StefanSTS
Joomla! Apprentice
Joomla! Apprentice
Posts: 19
Joined: Thu Jul 30, 2015 7:39 am

Re: Fix Breadcrumbs markup ...

Post by StefanSTS » Mon Sep 23, 2019 8:59 pm

The rumour is sourced from @myjoomlaguru on Twitter.
Please explain to @myjoomlaguru not to initiate rumours.

Sure I take responsibility to be one who now spreads that rumour for my own agenda to solve that breadcrumb problem reliably and quickly. Though I have no problems with that Google problem myself, I just want Joomla to be better.

Thanks
Stefan

User avatar
sozzled
Joomla! Exemplar
Joomla! Exemplar
Posts: 7999
Joined: Sun Jul 05, 2009 3:30 am
Location: Canberra, Australia
Contact:

Re: Fix Breadcrumbs markup ...

Post by sozzled » Mon Sep 23, 2019 10:11 pm

*ha-ha-ha* (laughing at the "Twittersphere" as the source of reliable news). Thanks, @StefanSTS, and I wouldn't trust anything from some self-professed insider about when things will happen (or not). There may be truth in such rumours (and they fuel some crazy discussions here on this forum) but as I wrote, "J! releases happen when J! releases happen—when there's a need to release a new version—and not because of some arbitrary timetable."

I'm not saying that there isn't a need to look into the b/crumbs issue (and I'm not saying that, the way things stand, GSC is hurting a lot of Joomlers) but the ground seems to be shifting behind the scenes and these are somewhat confusing times for all of us. I'm not saying that the b/crumbs issue isn't important (although, looking at GitHub, there are some people who don't think it's as important as ordinary Joomlers may feel the importance of it) but these things need to follow their course.

Yeah, I'm miffed by GSC telling website owners that the b/crumbs microdata doesn't meet their rules but it's kind of like being pestered by a mosquito buzzing around your ears, isn't it? IMO, it may be better to "quarantine" the GSC "mosquito" and just leave it to go on about its business of pestering folks. I'm guessing that the Google people may have overstepped themselves and they're reconsidering a better path. Who knows? Give it a few days.

I can wait. Cheers. ;)
https://www.kuneze.com/blog
“If you think I’m wrong then say, ‘I think you’re wrong.’ If you say ‘You’re wrong!’, how do you know?” :)


Post Reply

Return to “Search Engine Optimization (Joomla! SEO) in Joomla! 3.x”