Local metadata link commit at 2025-06-06 15:40:57 — file:///home/mrhavens/git-local-repos/git-sigil.git
This commit is contained in:
commit
b548318725
134 changed files with 15789 additions and 0 deletions
30
src/pages/rss.xml.js
Normal file
30
src/pages/rss.xml.js
Normal file
|
@ -0,0 +1,30 @@
|
|||
import rss from "@astrojs/rss";
|
||||
import { getCollection } from "astro:content";
|
||||
import { SITE } from "../config";
|
||||
|
||||
const allPosts = await getCollection("blog");
|
||||
const sortedPosts = Object.values(allPosts).sort(
|
||||
(a, b) => new Date(b.data.date).valueOf() - new Date(a.data.date).valueOf(),
|
||||
);
|
||||
|
||||
export const get = () =>
|
||||
rss({
|
||||
// `<title>` field in output xml
|
||||
title: `${SITE.name} | Blog`,
|
||||
// `<description>` field in output xml
|
||||
description: SITE.description,
|
||||
// base URL for RSS <item> links
|
||||
// SITE will use "site" from your project's astro.config.
|
||||
site: import.meta.env.SITE,
|
||||
// list of `<item>`s in output xml
|
||||
// simple example: generate items for every md file in /src/pages
|
||||
// see "Generating items" section for required frontmatter and advanced use cases
|
||||
items: sortedPosts.map((item) => ({
|
||||
title: item.data.title,
|
||||
description: item.data.description,
|
||||
link: `blog/${item.slug}`,
|
||||
pubDate: new Date(item.data.date),
|
||||
})),
|
||||
// (optional) inject custom xml
|
||||
customData: `<language>en-us</language>`,
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue