diff --git a/components/MetaTags.tsx b/components/MetaTags.tsx index d254893..3feda56 100644 --- a/components/MetaTags.tsx +++ b/components/MetaTags.tsx @@ -2,16 +2,17 @@ import { GenericResource } from "@lib/types.ts"; import { Head } from "$fresh/runtime.ts"; function generateJsonLd(resource: GenericResource): string { + const imageUrl = resource.meta?.image + ? `/api/images?image=${resource.meta.image}&width=1200` + : "/images/og-image.jpg"; + const baseSchema: Record = { "@context": "https://schema.org", "@type": resource.type.charAt(0).toUpperCase() + resource.type.slice(1), // Converts type to PascalCase name: resource.name, description: resource.content || resource.meta?.average || "", keywords: resource.tags?.join(", ") || "", - image: `/${resource.meta?.image || "/images/og-image.jpg"}`.replace( - "//", - "/", - ), + image: imageUrl, }; if (resource.meta?.author) { @@ -38,6 +39,10 @@ function generateJsonLd(resource: GenericResource): string { export function MetaTags({ resource }: { resource: GenericResource }) { const jsonLd = generateJsonLd(resource); + + const imageUrl = resource.meta?.image + ? `/api/images?image=${resource.meta.image}&width=1200` + : "/images/og-image.jpg"; return ( <> @@ -45,10 +50,7 @@ export function MetaTags({ resource }: { resource: GenericResource }) {