From 126e0c277881b16675d43b663ce8d95b51e93ea4 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Fri, 26 Jan 2024 09:11:44 -0500 Subject: Upgraded Astro and added tags --- bun.lockb | Bin 286413 -> 281472 bytes package.json | 4 ++-- src/pages/blog/tags/[tag].astro | 28 ++++++++++++++++++++++++++++ 3 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 src/pages/blog/tags/[tag].astro diff --git a/bun.lockb b/bun.lockb index 63d80f6..c2e9010 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 4d62368..3c8f80c 100644 --- a/package.json +++ b/package.json @@ -11,11 +11,11 @@ }, "dependencies": { "@astrojs/rss": "^4.0.3", - "@astrojs/vercel": "^6.1.3", + "@astrojs/vercel": "7.0.1", "@astrojs/vue": "^4.0.8", "@iconify-json/fa6-brands": "^1.1.18", "@vitejs/plugin-vue": "^5.0.3", - "astro": "^4.1.1", + "astro": "4.2.4", "astro-icon": "^1.0.2", "markdown-it": "^14.0.0", "sanitize-html": "^2.11.0", diff --git a/src/pages/blog/tags/[tag].astro b/src/pages/blog/tags/[tag].astro new file mode 100644 index 0000000..8885cfa --- /dev/null +++ b/src/pages/blog/tags/[tag].astro @@ -0,0 +1,28 @@ +--- +import Page from '../../../layouts/Page.astro'; + +export async function getStaticPaths() { + const allPosts = await Astro.glob('../../../content/blog/*.md'); + const uniqueTags = [...new Set(allPosts.map((post) => post.frontmatter.tags).flat())]; + + return uniqueTags.map((tag) => { + const filteredPosts = allPosts.filter((post) => post.frontmatter.tags.includes(tag)); + return { + params: { tag }, + props: { posts: filteredPosts }, + }; + }); +} + +const { tag } = Astro.params; +const { posts } = Astro.props; +--- + + {posts.map((post) => { + return ( +
+ {post.frontmatter.title} +
+ ) + })} +
-- cgit v1.2.3