From 62348fe6923a23033f72b71fb762e8065276e776 Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Mon, 2 Jan 2023 00:35:19 +0100 Subject: [PATCH] fix: use `rss.xml` for more intuitive url, don't override rss guid and add feed link --- nuxt.config.ts | 6 +++++- src/app.vue | 2 +- src/components/layout/TheSiteFooter.server.vue | 2 +- src/server/routes/{feed.xml.get.ts => rss.xml.get.ts} | 4 ++-- 4 files changed, 9 insertions(+), 5 deletions(-) rename src/server/routes/{feed.xml.get.ts => rss.xml.get.ts} (91%) diff --git a/nuxt.config.ts b/nuxt.config.ts index c495d8ad..009215a3 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -53,7 +53,7 @@ export default defineNuxtConfig({ }, prerender: { crawlLinks: true, - routes: ['/', '/uses', '/og/og.jpg', '/feed.xml'], + routes: ['/', '/uses', '/og/og.jpg', '/rss.xml'], }, hooks: { 'prerender:generate' (route) { @@ -67,6 +67,10 @@ export default defineNuxtConfig({ }, }, + routeRules: { + '/feed.xml': { redirect: '/rss.xml' }, + }, + content: { highlight: { preload: ['js', 'ts', 'json', 'vue'], diff --git a/src/app.vue b/src/app.vue index 66a41baa..24250004 100644 --- a/src/app.vue +++ b/src/app.vue @@ -78,7 +78,7 @@ if (process.server) { { rel: 'canonical', href: url }, { rel: 'mask-icon', color: '#fff', href: '/favicon.svg' }, { rel: 'icon', type: 'image/svg', href: '/favicon.svg' }, - { rel: 'alternate', type: 'application/rss+xml', href: '/feed.xml' }, + { rel: 'alternate', type: 'application/rss+xml', href: '/rss.xml' }, { rel: 'webmention', href: 'https://webmention.io/roe.dev/webmention' }, { rel: 'pingback', href: 'https://webmention.io/roe.dev/xmlrpc' }, { diff --git a/src/components/layout/TheSiteFooter.server.vue b/src/components/layout/TheSiteFooter.server.vue index cb7ea4e6..abb79a89 100644 --- a/src/components/layout/TheSiteFooter.server.vue +++ b/src/components/layout/TheSiteFooter.server.vue @@ -17,7 +17,7 @@ const links = [ name: 'Mastodon', }, { - link: '/feed.xml', + link: '/rss.xml', name: 'RSS', }, ] diff --git a/src/server/routes/feed.xml.get.ts b/src/server/routes/rss.xml.get.ts similarity index 91% rename from src/server/routes/feed.xml.get.ts rename to src/server/routes/rss.xml.get.ts index c2f0fd1a..d4d7ed97 100644 --- a/src/server/routes/feed.xml.get.ts +++ b/src/server/routes/rss.xml.get.ts @@ -9,6 +9,7 @@ export default defineEventHandler(async () => { const feed = new Feed({ title: 'Daniel Roe', description: 'The personal website of Daniel Roe', + feed: 'https://roe.dev/rss.xml', id: 'https://roe.dev/', link: 'https://roe.dev/blog', language: 'en', @@ -30,10 +31,9 @@ export default defineEventHandler(async () => { const blog = metadata[slug] feed.addItem({ title: blog.title, - id: slug, link: `https://roe.dev/blog/${slug}`, description: blog.description, - content: blog.html, + content: blog.html.replace(/ ({ name: tag })), author: [ { -- 2.51.2