--- import { getCollection } from "astro:content"; import BaseLayout from "@/layouts/BaseLayout.astro"; import { useT } from "@/i18n/translations"; import type { Lang } from "@/i18n/translations"; const lang = (Astro.currentLocale as Lang) || "en"; const T = useT(lang); const allPosts = await getCollection("blog"); const posts = allPosts .filter((post) => post.data.lang === "en" && post.data.draft !== true) .sort((a, b) => b.data.pubDate.getTime() - a.data.pubDate.getTime()); const pageTitle = `${T.blog} | Randify`; const pageDesc = T.blogDesc; const blogSchema = { "@context": "https://schema.org", "@type": "Blog", name: pageTitle, description: pageDesc, url: `https://randify.pro${Astro.url.pathname}`, inLanguage: lang, blogPost: posts.map((post) => ({ "@type": "BlogPosting", headline: post.data.title, description: post.data.description, datePublished: post.data.pubDate.toISOString(), url: `https://randify.pro/blog/${post.id.replace(/^en\//, "").replace(/\.md$/, "")}/`, })), }; ---