mirror of
https://github.com/valentineus/popov.link.git
synced 2025-07-03 08:00:26 +03:00
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.
This commit is contained in:
@ -33,9 +33,11 @@ const data = post.data.pubDate.toISOString();
|
||||
const schema = blogPostSchema({
|
||||
siteUrl: new URL("/", Astro.site).toString(),
|
||||
title,
|
||||
description,
|
||||
slug: post.slug,
|
||||
datePublished: data,
|
||||
author,
|
||||
lang,
|
||||
});
|
||||
---
|
||||
|
||||
@ -49,11 +51,9 @@ const schema = blogPostSchema({
|
||||
|
||||
<Layout title={title} description={description} lang={lang} schema={schema}>
|
||||
<article>
|
||||
<section>
|
||||
<header>
|
||||
<h1>{title}</h1>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<p>
|
||||
<small>
|
||||
Posted
|
||||
@ -63,7 +63,7 @@ const schema = blogPostSchema({
|
||||
<span>{remarkPluginFrontmatter.minutesRead}</span>
|
||||
</small>
|
||||
</p>
|
||||
</section>
|
||||
</header>
|
||||
|
||||
<section>
|
||||
<Content />
|
||||
|
@ -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(),
|
||||
},
|
||||
});
|
||||
|
Reference in New Issue
Block a user