diff options
author | João Augusto Costa Branco Marado Torres <torres.dev@disroot.org> | 2025-07-06 22:27:04 -0300 |
---|---|---|
committer | João Augusto Costa Branco Marado Torres <torres.dev@disroot.org> | 2025-07-06 22:27:04 -0300 |
commit | 449f71511e539878af4c65f073cdc373b469c45e (patch) | |
tree | 6c264a77426284d97d1c9b9d7a27a6015c3077a8 /src/components/templates/MicroBlog.astro | |
parent | 4ae2b810b68538ba4c287b0c80d6c2e002fe9ddd (diff) |
feat: more structured data
Signed-off-by: João Augusto Costa Branco Marado Torres <torres.dev@disroot.org>
Diffstat (limited to 'src/components/templates/MicroBlog.astro')
-rw-r--r-- | src/components/templates/MicroBlog.astro | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/src/components/templates/MicroBlog.astro b/src/components/templates/MicroBlog.astro index c16155e..88321dc 100644 --- a/src/components/templates/MicroBlog.astro +++ b/src/components/templates/MicroBlog.astro @@ -2,12 +2,9 @@ import Date from "@components/organisms/Date.astro"; import KeywordsList from "@components/organisms/KeywordsList.astro"; import { getFirstUserID, getLastUpdate } from "@lib/collection/helpers"; -import { Micro } from "@lib/collection/schemas"; -import type { CollectionEntry, z } from "astro:content"; +import type { Micro, MicroEntry } from "@lib/collection/schemas"; -interface Props extends CollectionEntry<"blog"> { - data: z.infer<typeof Micro>; -} +interface Props extends MicroEntry {} const micro = Astro.props; const { id, data, rendered } = micro; @@ -19,10 +16,14 @@ const [first, ...names] = display.split(/\s/); const last = names.length > 0 ? names[names.length - 1] : ""; const little = ((first?.[0] ?? "") + (last?.[0] ?? "")).slice(0, 2); --- -<article> +<article + itemprop="blogPost" + itemscope + itemtype="https://schema.org/BlogPosting" +> <header> <h3 class="title"> - <a href={`/blog/read/${id}`}>{title}</a> + <a href={`/blog/read/${id}`} itemprop="headline name">{title}</a> </h3> <span class="profile_picture">{ user?.website ? <a href={user.website}>{little}</a> : ( @@ -30,15 +31,21 @@ const little = ((first?.[0] ?? "") + (last?.[0] ?? "")).slice(0, 2); ) }</span> <div> - {first} {last} <small>· <Date + <span + itemprop="author" + itemscope + itemtype="https://schema.org/Person" + ><span itemprop="alternateName">{first} {last}</span></span> + <span class="small">· <Date {date} locales={lang} options={{ month: "short", day: "numeric" }} - /></small> + itemprop="dateModified" + /></span> </div> </header> <div class="content small"> - <div {lang}> + <div {lang} itemprop="articleBody text"> <Fragment set:html={rendered?.html} /> </div> <footer> |