i'm attempting to setup my LD+JSON object so that my vehicles can be automatically added to my Facebook Pixel catalog, however getting the following error:
A required field is missing: vehicle_id
I have attempted to add this multiple ways as seen below, however none of them are being recognized when I check the microdata.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Test Schema</title>
</head>
<body>
<script type="application/ld+json">
{
"#context": "https://schema.org",
"#type": "Vehicle",
"name": "KAWASAKI ZX",
"manufacturer": "Kawasaki",
"brand": {
"#type": "Brand",
"name": "Kawasaki"
},
"model": "ZX",
"url": "url here",
"mileageFromOdometer": "6000",
"#id": 123456,
"productID": 123456,
"vehicle_id": 123456,
"offers": {
"#type": "Offer",
"price": "18695.00",
"priceCurrency": "GBP",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/UsedCondition",
"#id": 123456,
"productID": 123456,
"vehicle_id": 123456
},
"description": "2015 Kawasaki ZX ZX 1000 Nff, In Grey..",
"image": "image url"
}
</script>
</body>
</html>
Any ideas where i'm going wrong?
Related
I have added the below Schema JSON code for SiteNavigationElemen on the section but this one is not fetching on https://search.google.com/test/rich-results. I want to show on Google search result. Could you please guide me this one code is correct or not.
<script type="application/ld+json">
{
"#context": "https://schema.org",
"#graph":
[
{
"#context": "https://schema.org",
"#type":"SiteNavigationElement",
"#id":"#table-of-contents",
"name": "EX",
"url": "https://example1.com"
},
{
"#context": "https://schema.org",
"#type":"SiteNavigationElement",
"#id":"#table-of-contents",
"name": "EX",
"url": "https://example1.com"
},
{
"#context": "https://schema.org",
"#type":"SiteNavigationElement",
"#id":"#table-of-contents",
"name": "EX",
"url": "https://example1.com"
},
{
"#context": "https://schema.org",
"#type":"SiteNavigationElement",
"#id":"#pagination",
"name": "EX",
"url": "https://example1.com"
},
{
"#context": "https://schema.org",
"#type":"SiteNavigationElement",
"#id":"#pagination",
"name": "EX",
"url": "https://example1.com"
}
]
}
</script>
Heena, it is because https://developers.google.com/search/docs/advanced/structured-data/video
There are only specific schemas that show up in rich results, but more work. They just won't work with that testing tool. I recommend https://validator.schema.org/
When I insert this code in the structured data testing tool I am only getting the first schema to show up. I can switch the order of the Local business and service w/ area served but when I do that only one of them shows up in the tool. The same thing happens when I try to split the two up and get them individually.
Working with json-ld scripts:
<script type="application/ld+json">
{
"#context": "https://schema.org",
"#type": "ProfessionalService",
"name": "Sebastian River Exterminating",
"image": "http://sebastianriverexterminating.com/images/extermination-logo-sebastian-fl.png",
"#id": "",
"url": "http://sebastianriverexterminating.com/",
"telephone": "7722289969",
"address": {
"#type": "PostalAddress",
"streetAddress": "124 Salazar Lane",
"addressLocality": "Sebastian",
"addressRegion": "FL",
"postalCode": "32958",
"addressCountry": "US"
},
"geo": {
"#type": "GeoCoordinates",
"latitude": 27.7600115,
"longitude": -80.50620599999999
},
"openingHoursSpecification": {
"#type": "OpeningHoursSpecification",
"dayOfWeek": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday"
],
"opens": "08:00",
"closes": "18:00"
},
"sameAs": "https://www.facebook.com/SebastianRiverExterminatingFL/timeline"
}
{
"#context": "http://schema.org",
"#type": "Service",
"serviceType": "Exterminator",
"additionalType": "https://en.wikipedia.org/wiki/Pest_control",
"areaServed": [
{
"#type": "City",
"name": "Sebastian",
"#id": "https://en.wikipedia.org/wiki/Sebastian,_Florida"
},
{
"#type": "City",
"name": "Roseland",
"#id": "https://en.wikipedia.org/wiki/Roseland,_Florida"
}
]}
</script>
That is not valid json or json-ld. You can only add one object to each script. e.g.
<script type="application/ld+json">
{
...
}
</script>
You can't list objects like you did.
One way around the issue is to add each into their own script tag.
Another is to use #graph to add them as an array inside an object. e.g.
<script type="application/ld+json">
{
"#graph": [
{
...
},
{
...
}
]
}
</script>
I believe you should use a sameAs not an #id in this case, since you are providing a reference for the search engine. also, I don't believe #id is a valid property of areaServed
Unparsable structured data issue detected for Shopify website.
"#context": "http://schema.org",
"#type": "Product",
"#id": "https://example.com/products/full-clear-zirconia-silver-tennis-bracelet#product",
"brand": {
"#type": "Brand",
"name": "belledesoiree.com"
},
"sku": "78969",
"description": "
Timeless- Classy- Beautiful
If you buy this bracelet",
The fix for me was to locate the file responsible for outputting the page, in my case it was article.liiquid and escape the content only in the json portion.
<script type="application/ld+json">
{
"#context": "http://schema.org",
"#type": "Article",
"articleBody": "{{ article.content | strip_html | escape }}", //<<
i have a problem when i try use the playlist plugin of video js like that example:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Playlist Tester Perform</title>
<style type="text/css">
.video-js {
float: left;
margin: 15px;
width: 440px;
height: 280px;
}
.vjs-playlist {
width: 250px;
float: left;
margin: 15px;
}
</style>
</head>
<body>
<video id="myPlayerID"
data-account="3676484087001"
data-player="04ac0699-ca6b-449b-a2b6-0f14b4a7893b"
data-embed="default"
class="video-js" controls></video>
<ol class="vjs-playlist"></ol>
<script src="//players.brightcove.net/3676484087001/04ac0699-ca6b-449b-a2b6-0f14b4a7893b_default/index.min.js"></script>
<script type="text/javascript">
videojs('myPlayerID').ready(function () {
var myPlayer = this;
myPlayer.playlist([{
"sources": [{
"src": "http://solutions.brightcove.com/bcls/assets/videos/Sea_SeaHorse.mp4", "type": "video/mp4"
}],
"name": "Seahorse",
"thumbnail": "http://solutions.brightcove.com/bcls/assets/images/Sea_Seahorse_poster.png",
"poster": "http://solutions.brightcove.com/bcls/assets/images/Sea_Seahorse_poster.png"
}, {
"sources": [{
"src": "http://solutions.brightcove.com/bcls/assets/videos/Sea_Anemone.mp4", "type": "video/mp4"
}],
"name": "Sea Anemone",
"thumbnail": "http://solutions.brightcove.com/bcls/assets/images/Sea_Anemone_poster.png",
"poster": "http://solutions.brightcove.com/bcls/assets/images/Sea_Anemone_poster.png"
}, {
"sources": [{
"src": "http://solutions.brightcove.com/bcls/assets/videos/Tiger.mp4", "type": "video/mp4"
}],
"name": "Tiger",
"thumbnail": "http://solutions.brightcove.com/bcls/assets/images/Tiger_poster.png",
"poster": "http://solutions.brightcove.com/bcls/assets/images/Tiger_poster.png"
}, {
"sources": [{
"src": "http://solutions.brightcove.com/bcls/assets/videos/Sea_ClownFish.mp4", "type": "video/mp4"
}],
"name": "Clownfish",
"thumbnail": "http://solutions.brightcove.com/bcls/assets/images/Sea_ClownFish_poster.png",
"poster": "http://solutions.brightcove.com/bcls/assets/images/Sea_ClownFish_poster.png"
}, {
"sources": [{
"src": "http://solutions.brightcove.com/bcls/assets/videos/Sea_LionFish.mp4", "type": "video/mp4"
}],
"name": "Lionfish",
"thumbnail": "http://solutions.brightcove.com/bcls/assets/images/Sea_LionFish_poster.png",
"poster": "http://solutions.brightcove.com/bcls/assets/images/Sea_LionFish_poster.png"
}]);
});
</script>
</body>
</html>
When i change the videos links to my local folder ("src": "/files/convert/videos/38472531Test.mp4", "type": "video/mp4"), the playlist doesn't advance to the next video. I think it is a problem of ffmpeg conversion but i'm not sure of that.
PD:The problem is only in the playlist not in the playing
i have just been having this same issue. I worked out on mine that if i set the url for the video file to http://myip/path to video file instead of giving it a local link to the file mine starts to auto play. Is this the case on yours?
I assume that this is a bug in the playlist plugin but it seems to work as a workaround in my case.
Can someone spot what's wrong with my code below? (It doesn't validate in the Google Structured Testing Tool.) I'm trying to create the JSON-LD code to add to a page that has multiple products for sale.
<script type="application/ld+json">
{
"#context": "http://schema.org",
"#graph": [
{
"#type": “Product”,
"name": “tshirt",
“description”: "test copy 1.”,
“image”: “image.jpg”
},
{
"#type": “Product”,
"name": “tshirt 2",
“description”: "test copy 2.”,
“image”: “image2.jpg”
}
]
}
</script>
Any help is much appreciated!
You are using “ instead of " in some places.
Replacing these, your snippet validates:
<script type="application/ld+json">
{
"#context": "http://schema.org",
"#graph": [
{
"#type": "Product",
"name": "tshirt",
"description": "test copy 1.",
"image": "image.jpg"
},
{
"#type": "Product",
"name": "tshirt 2",
"description": "test copy 2.",
"image": "image2.jpg"
}
]
}
</script>
Update: this snippet doesn't validate by using Google Rich Results Test anymore. Schema is being actively developed, so sometimes the requirements change after a while. For a list of products, Google is suggesting so called carousel.