• Resolved jimthephoneguy9569

    (@jimthephoneguy9569)


    I would like to add custom json for my structured data. For one script, it works fine. Adding more than one is problematic. Using the online generator as well as validator, I can easily create schema for Breadcrumbs, Article, Blogpost, and Product – all together (one full schema posted after the other) – and it validates all schemas.

    Try to paste that group into Squirrly, and the only schema that validates is Breadcrumbs – everything else is ignored.

    I tried to figure out the Squirrly language of json-ld but have come up short. Is there an online translator I can use to convert my normal structured data into the Squirrly format?

    Or any other suggestions how to get Squirrly to load all 4 of the schemas I need for an article?

    Thank you,
    Jim

Viewing 6 replies - 1 through 6 (of 6 total)
  • Thread Starter jimthephoneguy9569

    (@jimthephoneguy9569)

    BTW, I’m using the Squirrly Bulk SEO for posts, under the json-ld section you can use auto or custom json-ld code. The auto does not give me everything I need, and I can’t figure out how to generate more than one schema at a time with custom.

    There are other plugins we can use for structured data, but it would be best if we can do everything in one plugin instead of having to figure out and then keep track of the separate implementations.

    Jim

    Plugin Contributor Calin Vingan

    (@calinvingan)

    Hi Jim,

    Normally, if you add the custom JSON-LD schema generated with https://technicalseo.com/tools/schema-markup-generator/ Squirrly SEO will change the Json-LD into custom and will load the JSON-LD you’re adding.

    Squirrly automatically adds the Breadcrumbs, Article and Profile data which is needed by every article. It also adds the JSON-LD for pages, custom post types, products and authors.

    You can choose from Squirrly > SEO Settings > Automation which type of JSON-LD and Open Ggraph you want Squirrly SEO to generate and for which post type.

    Happy Holidays!

    Calin

    Thread Starter jimthephoneguy9569

    (@jimthephoneguy9569)

    OK, let’s take an example. Take the code below and copy/paste it into the online structured data validator. It will validate 4 schemas. Then, paste the same in the Squirrly json-ld custom code section for a post. Validate that. The online validator will show the Breadcrumbs and ignore everything else. How can I get Squirrly to keep all 4 schemas?

    <script type=”application/ld+json”>
    {
    “@context”: “https://schema.org/,
    “@type”: “BreadcrumbList”,
    “itemListElement”: [{
    “@type”: “ListItem”,
    “position”: 1,
    “name”: “xxx”,
    “item”: “https://google.com/;
    },{
    “@type”: “ListItem”,
    “position”: 2,
    “name”: “xxx”,
    “item”: “https://google.com/
    },{
    “@type”: “ListItem”,
    “position”: 3,
    “name”: “xxx”,
    “item”: “https://google.com/
    },{
    “@type”: “ListItem”,
    “position”: 4,
    “name”: “xxx”,
    “item”: “https://google.com/
    },{
    “@type”: “ListItem”,
    “position”: 5,
    “name”: “xxx”,
    “item”: “https://google.com/
    },{
    “@type”: “ListItem”,
    “position”: 6,
    “name”: “xxx”,
    “item”: “https://google.com/
    },{
    “@type”: “ListItem”,
    “position”: 7,
    “name”: “xxx”,
    “item”: “https://google.com/
    },{
    “@type”: “ListItem”,
    “position”: 8,
    “name”: “xxx”,
    “item”: “https://google.com/
    }]}
    </script>
    <script type=”application/ld+json”>
    {
    “@context”: “https://schema.org/,
    “@type”: “Article”,
    “mainEntityOfPage”: {
    “@type”: “WebPage”,
    “@id”: “https://google.com/
    },
    “headline”: “yyy”,
    “description”: “yyy”,
    “image”: “yyy.png”,
    “author”: {
    “@type”: “Person”,
    “name”: “yyy”
    },
    “publisher”: {
    “@type”: “Organization”,
    “name”: “yyy”,
    “logo”: {
    “@type”: “ImageObject”,
    “url”: “https://google.com/logo.png,
    “width”: 60,
    “height”: 60
    }
    },
    “datePublished”: “2019-12-01”,
    “dateModified”: “2019-12-23″
    }
    </script>
    
    <script type=”application/ld+json”>
    {
    “@context”: “https://schema.org/,
    “@type”: “Product”,
    “name”: “zzz”,
    “image”: “image.com/image.png”,
    “description”: “zzz”,
    “brand”: “zzz”,
    “gtin13”: “1234567891011”,
    “sku”: “zzz”,
    “offers”: {
    “@type”: “Offer”,
    “url”: “https://google.com/,
    “priceCurrency”: “USD”,
    “price”: “50.00”,
    “priceValidUntil”: “2020-12-31”,
    “availability”: “OnlineOnly”,
    “itemCondition”: “NewCondition”
    },
    “review”: {
    “@type”: “Review”,
    “name”: “zzz”,
    “reviewBody”: “zzz”,
    “reviewRating”: {
    “@type”: “Rating”,
    “ratingValue”: “5”,
    “bestRating”: “5”,
    “worstRating”: “1”
    },
    “datePublished”: “2019-11-7”,
    “author”: {“@type”: “Person”, “name”: “zzz”},
    “publisher”: {“@type”: “Organization”, “name”: “zzz”}
    },
    “aggregateRating”: {
    “@type”: “AggregateRating”,
    “ratingValue”: “5”,
    “bestRating”: “5”,
    “worstRating”: “1”,
    “ratingCount”: “300”,
    “reviewCount”: “1”
    }
    }
    </script>
    <script type=”application/ld+json”>
    {
    “@context”: “https://schema.org/,
    “@type”: “BlogPosting”,
    “mainEntityOfPage”: {
    “@type”: “WebPage”,
    “@id”: “https://google.com/
    },
    “headline”: “vvv”,
    “description”: “vvv”,
    “image”: “image.com/image.png”,
    “author”: {
    “@type”: “Person”,
    “name”: “vvv”
    },
    “publisher”: {
    “@type”: “Organization”,
    “name”: “vvv”,
    “logo”: {
    “@type”: “ImageObject”,
    “url”: “vvv.com/logo.png”,
    “width”: 60,
    “height”: 60
    }
    },
    “datePublished”: “2019-12-18”,
    “dateModified”: “2019-12-18”
    }
    </script>
    
    • This reply was modified 4 years, 11 months ago by jimthephoneguy9569.
    • This reply was modified 4 years, 11 months ago by jimthephoneguy9569. Reason: original paste made code incorrect
    Plugin Contributor Calin Vingan

    (@calinvingan)

    Hi,

    Can you please try to remove the tags </script><script type=”application/ld+json”> and add a comma instead? Probably Squirrly SEO is getting the code from within the first tags and this is why the rest of the JSON-LD is lost.

    Calin

    Thread Starter jimthephoneguy9569

    (@jimthephoneguy9569)

    Hi Shaun,

    Agreed on the above code – it works when pasted from notepad to the validator, but something goofed when it pasted into this forum.

    I use HFCM to do a similar thing as WordPress HTML, I can put the code in header, footer, or place by shortcode.

    The longer story here… is that I’m using AMPforWP to create AMP pages. AMPforWP strips all of my schema unless it’s served from Squirrly. No matter which one schema type I add to Squirrly in custom json-ld, AMPforWP conveys it.

    AMPforWP has a structured data plugin, but it’s actually terrible. Not scalable, difficult to use, and if you go through the pain of setting up one schema for one post, the validator shows errors and warnings – they don’t structure the code correctly. Extremely frustrating.

    AMPforWP integrates with Squirrly, Yoast, and a few others.

    AMPforWP support is absolutely worthless, so I need to figure out a way to use Squirrly to do this, or I have to try Yoast or some other means.

    If you can help me to use Squirrly custom json-ld for my 4 schemas, it solves the problem. Can you help?

    Thank you,
    Jim

    Plugin Contributor Calin Vingan

    (@calinvingan)

    Hi,

    We’ve tested AMPforWP and it works okay with Squirrly SEO plugin.

    Try this:
    – Add Squirrly as a SEO plugin in AMPforWP
    – Switch on Squirrly > SEO Settings > JSON-LD > Remove other JSON-LD from page.

    This works for us for AMP and NON-AMP pages.

    Calin

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘json structured data’ is closed to new replies.