]> git.otsuka.systems Git - cotsuka.github.io/commitdiff
add categories to rss feed
authorCameron Otsuka <cameron@otsuka.haus>
Fri, 21 Nov 2025 01:22:28 +0000 (17:22 -0800)
committerCameron Otsuka <cameron@otsuka.haus>
Fri, 21 Nov 2025 01:22:28 +0000 (17:22 -0800)
src/pages/feed.xml.ts

index 75e2f770a67a671b7600d4af0f28e218bf9c8499..7cee878d63a66e5cccb8ab91b00bc806a267a8c3 100644 (file)
@@ -7,25 +7,28 @@ export async function GET(context: any) {
   const articles = await getCollection('articles');
   const articleItems = articles.map((article) => ({
     title: article.data.title,
+    link: `/articles/${formatDate(article.data.date)}-${article.id}/`,
     pubDate: article.data.date,
     description: article.data.description,
-    link: `/articles/${formatDate(article.data.date)}-${article.id}/`
+    categories: (article.data.tags ?? []).concat('articles')
   }));
 
   const roundups = await getCollection('roundups');
   const roundupItems = roundups.map((roundup) => ({
     title: roundup.data.title,
+    link: `/build-weekly-roundup/${roundup.id}/`,
     pubDate: roundup.data.date,
     description: roundup.data.description,
-    link: `/build-weekly-roundup/${roundup.id}/`
+    categories: (roundup.data.tags ?? []).concat('roundups')
   }));
 
   const reviews = await getCollection('reviews');
   const reviewItems = reviews.map((review) => ({
     title: review.data.title,
+    link: `/reviews/${review.data.type}/${review.id}/`,
     pubDate: review.data.date,
     description: review.data.description,
-    link: `/reviews/${review.data.type}/${review.id}/`
+    categories: (review.data.tags ?? []).concat(review.data.type).concat('reviews')
   }));
 
   const feedItems = [ ...articleItems, ...roundupItems, ...reviewItems ];