File tree Expand file tree Collapse file tree 4 files changed +19
-3
lines changed
Expand file tree Collapse file tree 4 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -53,6 +53,8 @@ export default defineNuxtConfig({
5353 '/api/search.json' : { prerender : true } ,
5454 '/feed.atom' : { prerender : true } ,
5555 '/feed.rss' : { prerender : true } ,
56+ '/dotnet_feed.atom' : { prerender : true } ,
57+ '/dotnet_feed.rss' : { prerender : true } ,
5658 '/gitcheatsheet' : { redirect : '/goodies/gitcheatsheet' , prerender : true } ,
5759 } ,
5860 devtools : {
@@ -73,4 +75,4 @@ export default defineNuxtConfig({
7375 }
7476 } ,
7577 compatibilityDate : '2024-09-05'
76- } )
78+ } )
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ import {Feed} from "feed";
33import { serverQueryContent } from "#content/server" ;
44import type { EventHandlerRequest , H3Event } from "h3" ;
55
6- export async function generateFeed ( event : H3Event < EventHandlerRequest > ) {
6+ export async function generateFeed ( event : H3Event < EventHandlerRequest > , tags : string [ ] = [ ] ) : Promise < Feed > {
77 const baseUrl = 'https://techwatching.dev'
88 const siteUrl = joinURL ( baseUrl , 'posts' )
99 const feed = new Feed ( {
@@ -24,7 +24,7 @@ export async function generateFeed(event: H3Event<EventHandlerRequest>) {
2424 . where ( { _partial : false , _draft : false , _type : 'markdown' } )
2525 . find ( )
2626
27- for ( const article of articles ) {
27+ for ( const article of articles . filter ( article => tags . length === 0 || article . tags . some ( ( tag : string ) => tags . includes ( tag ) ) ) ) {
2828 feed . addItem ( {
2929 link : joinURL ( baseUrl , article . _path ?? '' ) ,
3030 image : joinURL ( baseUrl , article . image . src ) ,
Original file line number Diff line number Diff line change 1+ import { generateFeed } from "~/server/feed" ;
2+
3+ export default defineEventHandler ( async ( event ) => {
4+ const feed = await generateFeed ( event , [ ".NET" ] )
5+ appendHeader ( event , 'Content-Type' , 'application/xml' )
6+ return feed . atom1 ( )
7+ } )
Original file line number Diff line number Diff line change 1+ import { generateFeed } from "~/server/feed" ;
2+
3+ export default defineEventHandler ( async ( event ) => {
4+ const feed = await generateFeed ( event , [ ".NET" ] )
5+ appendHeader ( event , 'Content-Type' , 'application/xml' )
6+ return feed . rss2 ( )
7+ } )
You can’t perform that action at this time.
0 commit comments