From a65e9c845543abcda641f51f4dd8cd77ab50b60d Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Sat, 14 Jun 2025 11:47:17 +0000 Subject: feat: enhance blog post and page schema with new properties - Added optional `basedOn` field to blog post schema for better content attribution. - Updated blog post markdown to include `basedOn` reference for improved context. - Refactored page schema to replace deprecated website schema, enhancing structured data representation. - Adjusted 404 and index pages to utilize the new page schema for consistency and SEO improvements. --- src/utils/schemas/blogPostSchema.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/utils/schemas/blogPostSchema.ts') diff --git a/src/utils/schemas/blogPostSchema.ts b/src/utils/schemas/blogPostSchema.ts index 00395dd..9445448 100644 --- a/src/utils/schemas/blogPostSchema.ts +++ b/src/utils/schemas/blogPostSchema.ts @@ -5,13 +5,14 @@ export type BlogPostSchemaParams = { readonly dateModified: string; readonly datePublished: string; readonly description: string; + readonly isBasedOn?: string; readonly lang: string; readonly siteUrl: string; readonly slug: string; readonly title: string; }; -export default ({ siteUrl, slug, title, description, datePublished, dateModified, author, lang }: BlogPostSchemaParams): WithContext => ({ +export default ({ siteUrl, slug, title, description, datePublished, dateModified, author, lang, isBasedOn }: BlogPostSchemaParams): WithContext => ({ "@context": "https://schema.org", "@type": "BlogPosting", "url": new URL(`/blog/${slug}`, siteUrl).toString(), @@ -28,4 +29,5 @@ export default ({ siteUrl, slug, title, description, datePublished, dateModified "@type": "WebPage", "@id": new URL(`/blog/${slug}`, siteUrl).toString(), }, + ...(isBasedOn && { isBasedOn: isBasedOn }), }); -- cgit v1.2.3