Good that Gost implements a basic level of schema.org structured data.
However, the entities generated in the schema are missing an @id
attribute. This makes them non extensible.
When a JSON-LD object has an @id
attribute one can always add attributes to the object by creating a second object with the same @id
. That way objects generated by the Ghost core could be extended via header injections, or HTML blocks.
For example Ghost generates an Organization
as publisher
of articles. If the Organization
would have an @id
= https://example.com/#organization
attribute, I could add an address and other attributes with
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://example.com/#organization",
"address": {
"@type": "PostalAddress",
"addressLocality": "Paris, France",
"postalCode": "F-75002",
"streetAddress": "38 avenue de l'Opéra"
},
"email": "secretariat(at)google.org",
"faxNumber": "+33142685301"
}
</script>