Moz Q&A is closed.
After more than 13 years, and tens of thousands of questions, Moz Q&A closed on 12th December 2024. Whilst we’re not completely removing the content - many posts will still be possible to view - we have locked both new posts and new replies. More details here.
Product Schema Markup for All Products
-
Hi Team,
Google search console used to allow you to use their structured data markup helperhttps://www.google.com/webmasters/markup-helper/u/0/ to markup multiple product pages at once that were similar. I do not see this feature anymore with the new search console. Does anyone have a recommendation for marking up multiple product pages without having to have schema markup firing in GTM for each product page?
-
thanks for the schema code .
I already try with my personal website .please have a look at the code seo company in dubai
-
It is a AspDotNetStorefront E-commerce CMS. These developer tools are helpful. I have looked into the dynamic schema markup blog, but am not sure it is the best to implement this if there are a lot of products. I might also consider trying to have a developer implement article markup for a drupal site. This has been helpful thank you.
-
I agree what is storefront I can't find a CMS called storefront?
If Schema markup is being added to a brand new site, it’s much easier for developers to add the Schema as part of the site build, as opposed to layering it on after the website has already been coded. Developers benefit from SEOs telling them specifically which page elements require Schema (location, events, etc.) and a link to the respective Schema type on Schema.org, so the developer can figure out the best approach for implementation.
SEOs have largely taken ownership of writing JSON-LD themselves, which is great for speeding up the process of implementing Schema. JSON-LD is generally easiest for developers to implement, but adding inline Schema is usually simple as well. There are some plugins that can assist with the implementation, but they generally only support basic Schema types, such as the Website or Organization.
One way:
https://moz.com/blog/using-google-tag-manager-to-dynamically-generate-schema-org-json-ld-tags
https://moz.com/blog/json-ld-for-beginners
You can use Cloudflare
https://github.com/cloudflare/doca/blob/master/example/product.json
https://blog.cloudflare.com/cloudflares-json-powered-documentation-generator/
https://www.cloudflare.com/apps/developer/docs/install-json/options
I hope I have been of help,
Tom
-
Thank you Tom,
We are on storefront currently. We had previously used the schema markup tool for some of their products. I have used Google markup helper and technicalseo.com resources before to create JSON-LD to fire in GTM for blogs, vidoes, how-to pages, etc but not for product pages. Mostly because I agree that it can be done in a better way. Maybe consulting with a developer to implement product markup is best.
-
HI
Can I ask what platform you are using? If you're using an e-commerce platform like Magento, Shopify, BigCommerce, etc. There are simple ways of writing code that will do a better job as well as plug-ins that you can purchase and/or use for free.
Or if in the unlikely event you are just running an E-commerce website without a CMS you can still do this via coding. there is a method no matter what flavor of kosher using rather it be Ruby, PHP NodeJS, etc.
FYI
Google does NOT recommend Using Tag Manager to Implement Schema Markup.
John Mueller from Google advises against using Google Tag Manager to deploy Structured Data and mentions that the ideal solution is to add the structured data directly into the HTML. So ideally process it server-side and pass it via HTML instead of relying on a client-side solution like Javascript.
While this is not the ideal solution, as SEOs we know that we are not always in ideal situations and at times our best bet is to deploy it through a solution like Google Tag Manager. You could also look at deploying it via an Edge Computing Solution like Cloudflare Workers.
https://www.cloudflare.com/en-au/products/cloudflare-workers/
It is less than ideal to use Google tag manager to deploy JSON-LD to websites. It can be done but obviously it's not the best way.
just because it's not on the new search console yet does not mean that Google's structured data markup helper tool is obsolete.
https://www.google.com/webmasters/markup-helper/u/0/
Yes if you want to ad JSON-LD
Use any of the tools here
https://www.schemaapp.com/60-structured-data-tools-create-test-plugins-more/
Convert to GTM
https://saijogeorge.com/json-ld-schema-generator/tag-manager-fix/
You can add basic JSON-LD with
https://www.bounteous.com/insights/2017/03/20/seo-structured-data-recipe-gtm/
I use this to make this example
https://technicalseo.com/tools/schema-markup-generator/
GTM Friendly code
I hope I have been of help,
Tom
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
Unsolved Using NoIndex Tag instead of 410 Gone Code on Discontinued products?
Hello everyone, I am very new to SEO and I wanted to get some input & second opinions on a workaround I am planning to implement on our Shopify store. Any suggestions, thoughts, or insight you have are welcome & appreciated! For those who aren't aware, Shopify as a platform doesn't allow us to send a 410 Gone Code/Error under any circumstance. When you delete or archive a product/page, it becomes unavailable on the storefront. Unfortunately, the only thing Shopify natively allows me to do is set up a 301 redirect. So when we are forced to discontinue a product, customers currently get a 404 error when trying to go to that old URL. My planned workaround is to automatically detect when a product has been discontinued and add the NoIndex meta tag to the product page. The product page will stay up but be unavailable for purchase. I am also adjusting the LD+JSON to list the products availability as Discontinued instead of InStock/OutOfStock.
Technical SEO | | BakeryTech
Then I let the page sit for a few months so that crawlers have a chance to recrawl and remove the page from their indexes. I think that is how that works?
Once 3 or 6 months have passed, I plan on archiving the product followed by setting up a 301 redirect pointing to our internal search results page. The redirect will send the to search with a query aimed towards similar products. That should prevent people with open tabs, bookmarks and direct links to that page from receiving a 404 error. I do have Google Search Console setup and integrated with our site, but manually telling google to remove a page obviously only impacts their index. Will this work the way I think it will?
Will search engines remove the page from their indexes if I add the NoIndex meta tag after they have already been index?
Is there a better way I should implement this? P.S. For those wondering why I am not disallowing the page URL to the Robots.txt, Shopify won't allow me to call collection or product data from within the template that assembles the Robots.txt. So I can't automatically add product URLs to the list.0 -
Correct use of schema for online store and physical stores
I have been getting conflicting advice on the best way to implement schema for the following scenario. There is a central e-commerce store that is registered to it's own unique address which is "head office". There are a few physical shops each of which has their own location and address. Each shop has its own landing page within /our-stores/. So each page on the website has the Organisation schema for the central 'organisation', something like: Then on each physical store landing page is something like the following as well as the Organisation schema: Is this correct? If it is should I extend LocalBusiness with store URL and sameAs for GMB listing and maybe Companies House registration? It's also been suggested that we should use LocalBusiness for the head office of the company, then Departmentwith the typeStore. But i'm not sure on that?
Technical SEO | | MickEdwards0 -
Problems with WooCommerce Product Attribute Filter URL's
I am running a WordPress/WooCommerce site for a client, and Moz is picking up some issues with URL's generated from WooCommerce product attribute filters. For example: ..co.uk/womens-prescription-glasses/?filter_gender=mens&filter_style=full-rim&filter_shape=oval How do I get Google to ignore these filters?
Technical SEO | | SushiUK
I am running Yoast Premium, but not sure if this can solve the issue? Product categories are canonicalised to the root category URL. Any suggestions very gratefully appreciated. Thanks Bob0 -
How to deal with duplicated content on product pages?
Hi, I have a webshop with products with different sizes and colours. For each item I have a different URL, with almost the same content (title tag, product descriptions, etc). In order to prevent duplicated content I'am wondering what is the best way to solve this problem, keeping in mind: -Impossible to create one page/URL for each product with filters on colour and size -Impossible to rewrite the product descriptions in order to be unique I'm considering the option to canonicolize the rest of de colours/size variations, but the disadvantage is that in case the product is not in stock it disappears from the website. Looking forward to your opinions and solutions. Jeroen
Technical SEO | | Digital-DMG0 -
How big is the problem: 404-errors as result of out of stock products?
We had a discussion about the importance of 404-errors as result of products which are out of stock. Of course this is not good, but what is the leverance in terms of importance: low-medium-high?
Technical SEO | | Digital-DMG0 -
Schema markup for products is missing "price": Is this bad?
Hey guys, So a current client of mine has an e-commerce shop with a few hundred products. They purposely choose to keep the prices off of their website, which is causing errors in Google Webmaster Tools. Basically the error shows: Error: Structured Data > Product (markup: schema.org) Error type: missing price 208 items with error Is this a huge deal? Or are we allowed to have non-numerical prices for schema ie. "call for quote"
Technical SEO | | tbinga1 -
Can Google Read schema.org markup within Ajax?
Hi All, as a local business directory, we also display Openinghours on a business listing page. ex. http://www.goudengids.be/napoli-kontich-2550/
Technical SEO | | TruvoDirectories
At the same time I also have schema.org markup for Openinghours implemented.
But, for technical reasons (performance), the openinghours (and the markup alongside) are displayed using AJAX. I'm wondering if google is able to read the markup. The rich snippet tool and markup plugings like Semantic Inspector can't "see" the markup for openinghours. Any advice here?0 -
Using Schema.org: Product or Event as the schema type?
Hello, Most of you heard from the launch of the new format for microdata: Schema.org and my question is about the different types of Schema they provide. Our websites provide an overview of courses, visitors can search/filter training courses and most important: read peer reviews. Until now we formatted (the source) of those courses with the schema type "Product" because it allows us to provide search engines with metadata about reviews via the "Aggregrated Rating". Recently we updated the information about courses, to also provide start dates and locations to users, just like the schema type for: "Events". Because we would like to provide search engines also with both types of data I would like to know your opinion. Schema.org looks like not to support the Aggregated Rating for Events and vice versa for Startdates/Locations for the Product type. And combining the two Schema types also does not looks like an option because we can't put them on the same level like it should be. So what would you recommend to use for kind of schema type(s), are we able to use the 'Product' type next to the 'Event' type and so to combine them? Thanks a lot!
Technical SEO | | Martijn_Scheijbeler0