@@ -52,20 +52,27 @@ const frontmatter = entry.data;
52
52
)}
53
53
54
54
{ /* Add JSON-LD structured data */ }
55
- <script type =" application/ld+json" set:html ={ JSON .stringify ({
56
- " @context" : " https://schema.org" ,
57
- " @type" : " TechArticle" ,
58
- " name" : frontmatter .title ,
59
- " description" : frontmatter .description ,
60
- " keywords" : frontmatter .keywords ?.join (' , ' ),
61
- " audience" : Array .isArray (frontmatter .audience ) ? frontmatter .audience .join (' , ' ) : frontmatter .audience ,
62
- " difficulty" : frontmatter .complexity ,
63
- " abstract" : frontmatter .ai_summary ,
64
- " url" : Astro .url .href ,
65
- ... (frontmatter .updated && { " dateModified" : typeof frontmatter .updated === ' string' ? frontmatter .updated : frontmatter .updated .toISOString () }),
66
- " publisher" : {
67
- " @type" : " Organization" ,
68
- " name" : " Kinde" ,
69
- " url" : " https://kinde.com"
70
- }
71
- })} />
55
+ <script type =" application/ld+json" set:html ={ JSON .stringify (Object .fromEntries (
56
+ Object .entries ({
57
+ " @context" : " https://schema.org" ,
58
+ " @type" : " TechArticle" ,
59
+ " name" : frontmatter .title ,
60
+ " description" : frontmatter .description ,
61
+ " keywords" : Array .isArray (frontmatter .keywords ) ? frontmatter .keywords .join (' , ' ) : undefined ,
62
+ " audience" : Array .isArray (frontmatter .audience ) ? frontmatter .audience .join (' , ' ) : frontmatter .audience ,
63
+ " difficulty" : frontmatter .complexity ,
64
+ " abstract" : frontmatter .ai_summary ,
65
+ " url" : Astro .url .href ,
66
+ ... (frontmatter .updated && {
67
+ " dateModified" :
68
+ typeof frontmatter .updated === ' string'
69
+ ? frontmatter .updated
70
+ : frontmatter .updated .toISOString ()
71
+ }),
72
+ " publisher" : {
73
+ " @type" : " Organization" ,
74
+ " name" : " Kinde" ,
75
+ " url" : " https://kinde.com"
76
+ }
77
+ }).filter (([_ , value ]) => value !== undefined )
78
+ ))} />
0 commit comments