logo
Welcome to our new AbleCommerce forums. As a guest, you may view the information here. To post to this forum, you must have a registered account with us, either as a new user evaluating AbleCommerce or an existing user of the application. For all questions related to the older version of Gold and earlier, please go to AbleCommerce Gold forum. Please use your AbleCommerce username and password to Login. New Registrations are disabled.

Notification

Icon
Error

Options
Go to last post Go to first unread
Joe Payne2  
#1 Posted : Friday, November 4, 2022 10:06:14 AM(UTC)
Joe Payne2

Rank: Advanced Member

Groups: HelpDesk, Developers
Joined: 11/9/2018(UTC)
Posts: 564

Thanks: 122 times
Was thanked: 26 time(s) in 25 post(s)
We've noticed where ProductController.GoogleProductSchema() is generating up to 100 structured data items in a rich snippet array for products with variants. Our code coverage analysis shows this widget alone is responsible for 43% of the page postback speed when a variant dropdown selection is made.

I can't find any documentation online that specifically mentions a 100 element limit. Nor can I find anything that suggests having 100 elements actually helps anything.

We're scared to death to touch anything with structured data as it could easily impact organic SEO. However we're frustrated with the postback delays during variant dropdown selections.

Was there a specific technical reason for a 100 element limit?

Wanna join the discussion?! Login to your AbleCommerce Forums forum account. New Registrations are disabled.

nadeem  
#2 Posted : Monday, November 7, 2022 5:39:45 AM(UTC)
nadeem

Rank: Advanced Member

Groups: Administrators, Developers, Registered, HelpDesk, Authorized User, Admin, System
Joined: 10/11/2018(UTC)
Posts: 110

Thanks: 19 times
Was thanked: 18 time(s) in 18 post(s)
Quote:
Was there a specific technical reason for a 100 element limit?


It was set to increase the page speed. If there are thousands of variants, it slower the page since the widget is used on the product page. This has already been tested with 1200 variants using structured data testing tool.
Joe Payne2  
#3 Posted : Tuesday, November 8, 2022 2:25:51 PM(UTC)
Joe Payne2

Rank: Advanced Member

Groups: HelpDesk, Developers
Joined: 11/9/2018(UTC)
Posts: 564

Thanks: 122 times
Was thanked: 26 time(s) in 25 post(s)
I'm not entirely sure, but I think the widget tries to build every variant possibility regardless of the actual variant choices at a given time. And then stops at 100 for a maximum.

Is there a way to only do that one time on initial page load, rather than on every single postback? That's the problem - those rich snippets are getting generated every single postback and on a large variant matrix (6 option dropdowns, thousands of choices) it bogs down the page pretty badly.
Joe Payne2  
#4 Posted : Wednesday, November 9, 2022 1:00:51 PM(UTC)
Joe Payne2

Rank: Advanced Member

Groups: HelpDesk, Developers
Joined: 11/9/2018(UTC)
Posts: 564

Thanks: 122 times
Was thanked: 26 time(s) in 25 post(s)
Upon further investigation, I can see that the google schema data is the same with every postback. It's not taking into account the current optionsList value when pulling in variants. So regenerating the first 100 available variants on every single postback is a waste of time.

I've modified the routine to cache the data for 5 minutes on initial page load and got significant speed improvements right away.
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.