diff --git a/src/content.config.ts b/src/content.config.ts index 1c589f1..d22dcee 100644 --- a/src/content.config.ts +++ b/src/content.config.ts @@ -41,6 +41,7 @@ const blog = defineCollection({ image: z.string().optional(), tags: z.array(z.string()), readTime: z.string().optional(), + archived: z.boolean().default(false), }), }); diff --git a/src/content/nixos-and-postgresql.md b/src/content/nixos-and-postgresql.md index aaeb155..316a6a0 100644 --- a/src/content/nixos-and-postgresql.md +++ b/src/content/nixos-and-postgresql.md @@ -5,6 +5,7 @@ date: 2023-11-28 tags: - nix - postgresql +archived: true --- When upgrading to version 15 from 14, there was an issue. None of my data was diff --git a/src/pages/blog/[...slug].astro b/src/pages/blog/[...slug].astro index 4fcb14d..0f54fd0 100644 --- a/src/pages/blog/[...slug].astro +++ b/src/pages/blog/[...slug].astro @@ -7,7 +7,10 @@ import { render } from 'astro:content'; import { Icon } from 'astro-icon/components'; export async function getStaticPaths() { - const posts = await getCollection('blog'); + const posts = await getCollection('blog', ({ data }) => { + return !data.draft && !data.archived; + }); + return posts.map((post) => ({ params: { slug: post.id }, props: post, diff --git a/src/pages/blog/index.astro b/src/pages/blog/index.astro index 99581a0..ab74786 100644 --- a/src/pages/blog/index.astro +++ b/src/pages/blog/index.astro @@ -8,7 +8,9 @@ import Article from '../../components/Article.astro'; const title = "Blog" const description = "The parts of my life that I put out into the world"; -const posts = await getCollection('blog'); +const posts = await getCollection('blog', ({ data }) => { + return !data.draft && !data.archived; +}); const tags = new Set(); posts.forEach((post) => Array.isArray(post.data.tags) && post.data.tags.forEach((tag) => tags.add(tag))); diff --git a/src/pages/blog/tag/[...slug].astro b/src/pages/blog/tag/[...slug].astro index 248dcb9..0356adb 100644 --- a/src/pages/blog/tag/[...slug].astro +++ b/src/pages/blog/tag/[...slug].astro @@ -6,7 +6,9 @@ import Title from '../../../components/Title.astro'; import Article from '../../../components/Article.astro'; export async function getStaticPaths() { - const posts = await getCollection('blog'); + const posts = await getCollection('blog', ({ data }) => { + return !data.draft && !data.archived; + }); const tags = new Set(); diff --git a/src/pages/feed.xml.js b/src/pages/feed.xml.js index 4a7f19b..10bcba6 100644 --- a/src/pages/feed.xml.js +++ b/src/pages/feed.xml.js @@ -5,7 +5,10 @@ import sanitizeHtml from "sanitize-html"; import MarkdownIt from "markdown-it"; export async function GET(context) { - const posts = await getCollection("blog"); + const posts = await getCollection('blog', ({ data }) => { + return !data.draft && !data.archived; + }); + const siteUrl = "https://isabelroses.com"; const md = new MarkdownIt({ diff --git a/src/pages/index.astro b/src/pages/index.astro index c3b6677..556bf96 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -7,7 +7,10 @@ import Title from '../components/Title.astro'; import ProjectMinimal from '../components/ProjectMinimal.astro'; import Article from '../components/Article.astro'; -const posts = await getCollection('blog'); +const posts = await getCollection('blog', ({ data }) => { + return !data.draft && !data.archived; +}); + import { PROJECTS } from '../consts'; ---