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.
Schema types for webinars, infographics, datasheets, product videos and eBooks
-
Hi,
I’m looking to add Schema markup to my company pages’s webinar page (recording past webinars) and data sheets, infographics, product videos, eBooks/white papers. For eBooks, I am primarily referring to a landing page with a gate to download a PDF document.
I’m trying to determine the best markup type:
For Webinars, I’ve seen suggestions to use “Event” type but that seems appropriate for future events, not something like a recorded webinar, which is not time-sensitive, unlike a live event. However, I see a StackOverflow forum to use http://schema.org/recordedIn for recorded webinars.
For eBooks and White Papers, I see a few potential schema types:
https://schema.org/DigitalDocument
https://schema.org/CreativeWork
http://schema.org/EBook (or https://schema.org/Book and then book format type of Ebook)
-
I will create the schema for my movies website. I will create the Movie rating schema, Article schema and some more schemas that is need to my website.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Movie",
"actor": [
{
"@type": "Person",
"name": "Johnny Depp"
},
{
"@type": "Person",
"name": "Penelope Cruz"
},
{
"@type": "Person",
"name": "Ian McShane"
}
],
"aggregateRating": {
"@type": "AggregateRating",
"bestRating": "10",
"ratingCount": "200",
"ratingValue": "8",
"reviewCount": "50"
},
"author": [
{
"@type": "Person",
"name": "Ted Elliott"
},
{
"@type": "Person",
"name": "Terry Rossio"
}
],
"description": "Jack Sparrow and Barbossa embark on a quest to find the elusive fountain of youth, only to discover that Blackbeard and his daughter are after it too.",
"director": {
"@type": "Person",
"name": "Rob Marshall"
},
"name": "Pirates of the Carribean: On Stranger Tides (2011)"
}
</script>
This schema is help me to index my website fastly. -
@WhiteHat1 Hey there! For a webinar, the most appropriate schema would be a combination of Event and OnDemandEvent due to its online nature. However, as of my last update, OnDemandEvent was more suitable for an event like a movie or TV show that is available for streaming whenever you want to watch it, rather than a live webinar that takes place at a specific time.
For most live webinars, you should use the Event type with an eventAttendanceMode property set to OnlineEventAttendanceMode. The VirtualLocation type would also be used instead of a physical address.
Here's an example of what that schema might look like:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": "Interactive Webinar on Data Science",
"description": "Join our expert panel as they delve into the latest trends in Data Science. This webinar will cover a range of topics from predictive analytics to deep learning.",
"startDate": "2023-12-01T18:00:00+00:00",
"endDate": "2023-12-01T19:30:00+00:00",
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
"eventStatus": "https://schema.org/EventScheduled",
"location": {
"@type": "VirtualLocation",
"url": "https://www.webinarhost.com/event123"
},
"image": "https://www.webinarhost.com/images/event123_banner.jpg",
"organizer": {
"@type": "Organization",
"name": "Data Science Community Forum",
"url": "https://www.datascienceforum.org"
},
"performer": {
"@type": "Person",
"name": "Dr. Jane Doe",
"url": "https://www.datascienceforum.org/speakers#JaneDoe"
},
"offers": {
"@type": "Offer",
"url": "https://www.webinarhost.com/register/event123",
"price": "0",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"validFrom": "2023-11-01T09:00:00+00:00"
},
"audience": {
"@type": "EducationalAudience",
"audienceType": "Professional"
},
"recordedIn": {
"@type": "CreativeWork",
"name": "Data Science Webinar Series"
}
}
</script>Some points to consider:
eventAttendanceMode: Specifies that the event is an online event.
location: Uses VirtualLocation with a url property to indicate where the webinar can be accessed.
offers: Contains details about the registration or ticketing, which in this case indicates a free event.
recordedIn: If the webinar is part of a series, you might include this to reference the series.
Make sure to validate your structured data using Google's Rich Results Test or similar tools to check for any errors or warnings that might affect how search engines interpret and display your content.I really hope that this helps!
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
-
Embedding Video for SEO? YouTube, Vimeo, or Wistia?
I believe Vimeo has the advantages of being able to embed your video on your website without advertising and the ability to brand the player with your company name. Can't do that with YouTube. However obviously Google give a bit more weight to YouTube videos in search results. But I'm talking about ranking the website, not the video. If the objective is to provide the biggest boost to the website's ranking (not the individual video), is it best to embed the YouTube video or can you post the video on both YouTube, Vimeo, and Wistia and embed the Vimeo or Wistia video? My gut feeling is that Google would see the direct linkage between the video on YouTube and the website it's embedded on and potentially that would have (albeit probably small) more benefit in the website's ranking than embedding the Vimeo or Wistia video? HOWEVER, re the SEO claims on this Wistia page true? Would the best strategy be to use Wistia for embedding and then also post the videos on a YouTube channel for maximum exposure? From Wistia: _Vimeo, like YouTube, is a powerful domain for SEO, but when you host your videos on these platforms, you are not doing your website's SEO a favor. When you upload your video to Vimeo or YouTube, the search engines are indexing the original url, not your website's. In contrast, when you embed a Wistia video on your website, your website gains all of the SEO benefits. Vimeo videos are ranked to drive traffic to Vimeo to keep users on their platform. Wistia videos drive traffic to your website—not ours._
Intermediate & Advanced SEO | | Jazee1 -
Lazy Loading of products on an E-Commerce Website - Options Needed
Hi Moz Fans. We are in the process of re-designing our product pages and we need to improve the page load speed. Our developers have suggested that we load the associated products on the page using Lazy Loading, While I understand this will certainly have a positive impact on the page load speed I am concerned on the SEO impact. We can have upwards of 50 associated products on a page so need a solution. So far I have found the following solution online which uses Lazy Loading and Escaped Fragments - The concern here is from serving an alternate version to search engines. The solution was developed by Google not only for lazy loading, but for indexing AJAX contents in general.
Intermediate & Advanced SEO | | JBGlobalSEO
Here's the official page: Making AJAX Applications Crawlable. The documentation is simple and clear, but in a few words the solution is to use slightly modified URL fragments.
A fragment is the last part of the URL, prefixed by #. Fragments are not propagated to the server, they are used only on the client side to tell the browser to show something, usually to move to a in-page bookmark.
If instead of using # as the prefix, you use #!, this instructs Google to ask the server for a special version of your page using an ugly URL. When the server receives this ugly request, it's your responsibility to send back a static version of the page that renders an HTML snapshot (the not indexed image in our case). It seems complicated but it is not, let's use our gallery as an example. Every gallery thumbnail has to have an hyperlink like: http://www.idea-r.it/...#!blogimage=<image-number></image-number> When the crawler will find this markup will change it to
http://www.idea-r.it/...?_escaped_fragment_=blogimage=<image-number></image-number> Let's take a look at what you have to answer on the server side to provide a valid HTML snapshot.
My implementation uses ASP.NET, but any server technology will be good. var fragment = Request.QueryString[``"_escaped_fragment_"``];``if (!String.IsNullOrEmpty(fragment))``{``var escapedParams = fragment.Split(``new``[] { ``'=' });``if (escapedParams.Length == 2)``{``var imageToDisplay = escapedParams[1];``// Render the page with the gallery showing ``// the requested image (statically!)``...``}``} What's rendered is an HTML snapshot, that is a static version of the gallery already positioned on the requested image (server side).
To make it perfect we have to give the user a chance to bookmark the current gallery image.
90% comes for free, we have only to parse the fragment on the client side and show the requested image if (window.location.hash)``{``// NOTE: remove initial #``var fragmentParams = window.location.hash.substring(1).split(``'='``);``var imageToDisplay = fragmentParams[1]``// Render the page with the gallery showing the requested image (dynamically!)``...``} The other option would be to look at a recommendation engine to show a small selection of related products instead. This would cut the total number of related products down. The concern with this one is we are removing a massive chunk of content from he existing pages, Some is not the most relevant but its content. Any advice and discussion welcome 🙂0 -
Schema markup for video playlists?
We're adding schema markup for all of our videos, but some videos exist only in a playlist (all integrated into one URL, and loaded after a javascript call). Per Google: "Make sure that your video and schema.org markup are visible without executing any JavaScript or Flash." https://support.google.com/webmasters/answer/2413309?hl=en So we know the current implementation won't work for schema markup... What's the best practice for adding schema markup for video playlists? Should we host all of these videos on individual URLs (but then they appear twice) or is there some other workaround?
Intermediate & Advanced SEO | | nicole.healthline0 -
Schema.org Markup for Currencies in Multiple Countries.
Hello - Just getting in to a bit of Markup for rich snippets etc. This site sells from New Zealand , but our target market is Australia and most of our sales are there and we locate it there in Webmaster tools. Our Site changes currency / location automatically detecting IP Addresses. So -primarily I have a product with multiple variations on one page that I want to show offers in Google.com.au - in Australian Dollars Syntol Probiotic
Intermediate & Advanced SEO | | s_EOgi_Bear
90 caps $25AUD 180 Caps $50AUD 360 Caps 75AUD Here is the page http://www.return2health.net/syntol.html Ideas around that? Ideally I would like to add some country specific data to it I guess..?0 -
ECommerce product listed in multiple places, best SEO practice?
We have an eCommerce site we have built for a customer and the products are allowed to appear in more than one product category within the web site. Now I know this is a bad idea from a duplicate content point of view, But we are going to allow the customer to select which out of the multiple categories the product appears in will be the default category. This will mean we will have a way of defining what the default url is for a product. So am I correct in thinking all the other urls where the product appears we should add a rel canonical to these pages pointing to the default url to stop duplicate content? Is this the best way?
Intermediate & Advanced SEO | | spiralsites0 -
Schema.org and YouTube Videos
Hi, Does anyone know how to implement schema.org markup with YouTube embedded videos? Thanks Carlos
Intermediate & Advanced SEO | | Carlos-R0 -
Dynamic pages - ecommerce product pages
Hi guys, Before I dive into my question, let me give you some background.. I manage an ecommerce site and we're got thousands of product pages. The pages contain dynamic blocks and information in these blocks are fed by another system. So in a nutshell, our product team enters the data in a software and boom, the information is generated in these page blocks. But that's not all, these pages then redirect to a duplicate version with a custom URL. This is cached and this is what the end user sees. This was done to speed up load, rather than the system generate a dynamic page on the fly, the cache page is loaded and the user sees it super fast. Another benefit happened as well, after going live with the cached pages, they started getting indexed and ranking in Google. The problem is that, the redirect to the duplicate cached page isn't a permanent one, it's a meta refresh, a 302 that happens in a second. So yeah, I've got 302s kicking about. The development team can set up 301 but then there won't be any caching, pages will just load dynamically. Google records pages that are cached but does it cache a dynamic page though? Without a cached page, I'm wondering if I would drop in traffic. The view source might just show a list of dynamic blocks, no content! How would you tackle this? I've already setup canonical tags on the cached pages but removing cache.. Thanks
Intermediate & Advanced SEO | | Bio-RadAbs0 -
Schema.org and Testimonials
Does anyone know which fields and code are necessary to embed a testimonial into a page using schema.org?
Intermediate & Advanced SEO | | rarbel0