();
allBriefs.forEach(brief => {
- const category = extractCategoryFromSlug(brief.slug);
+ const category = extractCategoryFromSlug(brief.id);
if (category) {
categories.add(category);
}
@@ -27,7 +27,7 @@ export async function getStaticPaths() {
props: {
category,
briefs: byDateDesc(
- allBriefs.filter(brief => extractCategoryFromSlug(brief.slug) === category)
+ allBriefs.filter(brief => extractCategoryFromSlug(brief.id) === category)
)
}
}));
diff --git a/src/pages/briefs/index.astro b/src/pages/briefs/index.astro
index dcca7b1..6153920 100644
--- a/src/pages/briefs/index.astro
+++ b/src/pages/briefs/index.astro
@@ -24,7 +24,7 @@ type BriefsByCategory = {
// Group briefs by category
const briefs_by_category: BriefsByCategory = collection.reduce((acc: BriefsByCategory, brief) => {
- const categorySlug = extractCategoryFromSlug(brief.slug);
+ const categorySlug = extractCategoryFromSlug(brief.id);
const categoryKey = categorySlug || 'uncategorized';
if (!acc[categoryKey]) {
diff --git a/src/pages/projects/[...slug].astro b/src/pages/projects/[...slug].astro
index 2cb3ea9..b1ffb32 100644
--- a/src/pages/projects/[...slug].astro
+++ b/src/pages/projects/[...slug].astro
@@ -1,5 +1,5 @@
---
-import type { CollectionEntry } from "astro:content";
+import { render, type CollectionEntry } from "astro:content";
import PageLayout from "@layouts/PageLayout.astro";
import Container from "@components/Container.astro";
import FormattedDate from "@components/FormattedDate.astro";
@@ -13,14 +13,14 @@ import { renderInlineMarkdown } from "@lib/markdown";
export async function getStaticPaths() {
const projects = await getPublishedCollection("projects");
return projects.map((project) => ({
- params: { slug: project.slug },
+ params: { slug: project.id },
props: project,
}));
}
type Props = CollectionEntry<"projects">;
const project = Astro.props;
-const { Content } = await project.render();
+const { Content } = await render(project);
const ogData = getProjectOGData(project, Astro.url.toString(), Astro.site?.toString() || "");
const renderedTitle = renderInlineMarkdown(project.data.title);
@@ -40,7 +40,7 @@ const renderedTitle = renderInlineMarkdown(project.data.title);
•
- {readingTime(project.body)}
+ {readingTime(project.body ?? "")}
diff --git a/src/pages/rss.xml.ts b/src/pages/rss.xml.ts
index 344fe4e..3618a7d 100644
--- a/src/pages/rss.xml.ts
+++ b/src/pages/rss.xml.ts
@@ -34,7 +34,7 @@ export async function GET(context: Context) {
title: item.data.title,
description: item.data.description,
pubDate: item.data.date,
- link: `/${item.collection}/${item.slug}/`,
+ link: `/${item.collection}/${item.id}/`,
})),
});
}