Problem
Blog articles currently lack structured data (Schema.org markup), which limits:
- Rich snippet eligibility in search results
- AI crawler understanding of content structure
- Enhanced search result displays (author, date, reading time)
- Article discoverability and categorization
Proposed Solution
Add JSON-LD structured data to all blog post pages with Article schema:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Article Title",
"description": "Article description",
"author": {
"@type": "Organization",
"name": "OpenThreads"
},
"publisher": {
"@type": "Organization",
"name": "OpenThreads",
"logo": {
"@type": "ImageObject",
"url": "https://www.openthreads.dev/assets/logo.png"
}
},
"datePublished": "2024-11-12",
"dateModified": "2024-11-12",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.openthreads.dev/blog/article-slug"
}
}
Implementation Steps
- Create a
StructuredData component that accepts article metadata
- Add it to blog post template using
react-helmet-async
- Include Article, Organization, and BreadcrumbList schemas
- Validate with Google's Rich Results Test
- Test with Schema.org validator
Additional Schemas to Consider
BreadcrumbList - Navigation breadcrumbs
Organization - Homepage
WebSite - Search action markup
FAQPage - If we add FAQ sections
Benefits
- ✅ Eligible for rich snippets in search results
- ✅ Better content understanding by AI crawlers
- ✅ Enhanced search result displays
- ✅ Improved click-through rates
- ✅ Better content categorization
Resources
Labels
enhancement, SEO, content
Problem
Blog articles currently lack structured data (Schema.org markup), which limits:
Proposed Solution
Add JSON-LD structured data to all blog post pages with
Articleschema:{ "@context": "https://schema.org", "@type": "Article", "headline": "Article Title", "description": "Article description", "author": { "@type": "Organization", "name": "OpenThreads" }, "publisher": { "@type": "Organization", "name": "OpenThreads", "logo": { "@type": "ImageObject", "url": "https://www.openthreads.dev/assets/logo.png" } }, "datePublished": "2024-11-12", "dateModified": "2024-11-12", "mainEntityOfPage": { "@type": "WebPage", "@id": "https://www.openthreads.dev/blog/article-slug" } }Implementation Steps
StructuredDatacomponent that accepts article metadatareact-helmet-asyncAdditional Schemas to Consider
BreadcrumbList- Navigation breadcrumbsOrganization- HomepageWebSite- Search action markupFAQPage- If we add FAQ sectionsBenefits
Resources
Labels
enhancement,SEO,content