@@ -15,10 +15,42 @@ type Props = CollectionEntry<'blog'>;
1515const post = Astro .props ;
1616const { Content, headings } = await render (post );
1717const tocHeadings = headings .filter ((heading ) => heading .depth >= 2 && heading .depth <= 3 );
18- const readingTime = getReadingTimeLabel (post .body );
18+ const readingTime = getReadingTimeLabel (post .body ?? ' ' );
1919---
2020
21- <Layout title ={ post .data .title } description ={ post .data .description } >
21+ <Layout title ={ ` ${post .data .title } | Kyle Undefined ` } description ={ post .data .description } >
22+ <script type =" application/ld+json" set:html ={ JSON .stringify ({
23+ " @context" : " https://schema.org" ,
24+ " @graph" : [
25+ {
26+ " @type" : " BlogPosting" ,
27+ " headline" : post .data .title ,
28+ " description" : post .data .description ,
29+ " datePublished" : post .data .pubDate .toISOString (),
30+ ... (post .data .updatedDate && { " dateModified" : post .data .updatedDate .toISOString () }),
31+ " url" : ` https://kyleundefined.dev/blog/${post .id } ` ,
32+ " inLanguage" : " en" ,
33+ " author" : {
34+ " @type" : " Person" ,
35+ " name" : " Kyle Undefined" ,
36+ " url" : " https://kyleundefined.dev"
37+ },
38+ " publisher" : {
39+ " @type" : " Person" ,
40+ " name" : " Kyle Undefined" ,
41+ " url" : " https://kyleundefined.dev"
42+ }
43+ },
44+ {
45+ " @type" : " BreadcrumbList" ,
46+ " itemListElement" : [
47+ { " @type" : " ListItem" , " position" : 1 , " name" : " Home" , " item" : " https://kyleundefined.dev" },
48+ { " @type" : " ListItem" , " position" : 2 , " name" : " Blog" , " item" : " https://kyleundefined.dev/blog" },
49+ { " @type" : " ListItem" , " position" : 3 , " name" : post .data .title }
50+ ]
51+ }
52+ ]
53+ })} />
2254 <div
2355 data-reading-progress
2456 style =" transform: scaleX(0);"
0 commit comments