diff options
author | Valentin Popov <valentin@popov.link> | 2025-06-14 14:09:34 +0300 |
---|---|---|
committer | Valentin Popov <valentin@popov.link> | 2025-06-14 14:09:34 +0300 |
commit | 3df02c5304b8faee540694b15041ad2ee43bc1b2 (patch) | |
tree | f5bfae6d5096cfddb96ac76ecfd63d4dd45ff91b /src/utils/schemas | |
parent | 9777d996d172755472dd8127ff9b7a3c579cf454 (diff) | |
download | popov.link-3df02c5304b8faee540694b15041ad2ee43bc1b2.tar.xz popov.link-3df02c5304b8faee540694b15041ad2ee43bc1b2.zip |
feat: enhance blog post schema and structure
- Added description and lang parameters to the blogPostSchema for improved structured data.
- Updated the blog post layout to include a header section for better semantic structure and accessibility.
Diffstat (limited to 'src/utils/schemas')
-rw-r--r-- | src/utils/schemas/blogPostSchema.ts | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/utils/schemas/blogPostSchema.ts b/src/utils/schemas/blogPostSchema.ts index b20f248..5393cb1 100644 --- a/src/utils/schemas/blogPostSchema.ts +++ b/src/utils/schemas/blogPostSchema.ts @@ -3,19 +3,28 @@ import type { WithContext, BlogPosting } from "schema-dts"; export type BlogPostSchemaParams = { readonly siteUrl: string; readonly title: string; + readonly description: string; readonly slug: string; readonly datePublished: string; readonly author: string; + readonly lang: string; }; -export default ({ siteUrl, title, slug, datePublished, author }: BlogPostSchemaParams): WithContext<BlogPosting> => ({ +export default ({ siteUrl, title, description, slug, datePublished, author, lang }: BlogPostSchemaParams): WithContext<BlogPosting> => ({ "@context": "https://schema.org", "@type": "BlogPosting", "url": new URL(`/blog/${slug}`, siteUrl).toString(), "headline": title, + "description": description, "datePublished": datePublished, + "dateModified": datePublished, + "inLanguage": lang, "author": { "@type": "Person", "name": author, }, + "mainEntityOfPage": { + "@type": "WebPage", + "@id": new URL(`/blog/${slug}`, siteUrl).toString(), + }, }); |