You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I came across this library when I was searching for a way to build the RSS feed of my blog as part of the postbuild step, not in the getStaticProps function like I saw all tutorials out there suggesting. next-rss is great 🎉 because, like next-sitemap, is parsing the build manifest to obtain the list of blogs. That way, I don't need to query the API again to obtain the list.
However, I found an issue immediately. I suspect that when there are dynamic pages, like my case with /pages/blog/[blogPostSlug], it errors out because pageProps is undefined when looping through it as found in .next/server/pages/.... I'm not 100% positive that's the root cause, but it appears that the issue is fixed simply skipping the cases in which pageProps is undefined. See:
Adding these lines in src/feed.ts fixes the issue:
Additionally, I found myself wanting to add more properties in the feed items. Currently, next-rss only sets title, id, link and date, but library feed supports more parameters, like image, category, description and content, so it made sense to allow users to customize them.
Since I saw this project looked stale, I went ahead and made a fork to add the fix, a new feature of allowing to pass more item properties, and security fixes on the dependencies, so I could use it for my project. Here's the published version: https://www.npmjs.com/package/@guillermodlpa/next-rss
You can view here how the next-rss.js configuration ends up looking like with the new createFeedItem config parameter:
The nice thing is that we can make next-rss adapt to the page props structure, as opposed to forcing next pages to use the structure defined internally in the package, as it is now.
If your next-rss project is active and maintained, let me know. I'd love to contribute pull requests with those changes and other useful functionality. I believe this library has a lot of potential.
Cheers
The text was updated successfully, but these errors were encountered:
Hi there!
I came across this library when I was searching for a way to build the RSS feed of my blog as part of the
postbuild
step, not in thegetStaticProps
function like I saw all tutorials out there suggesting.next-rss
is great 🎉 because, like next-sitemap, is parsing the build manifest to obtain the list of blogs. That way, I don't need to query the API again to obtain the list.However, I found an issue immediately. I suspect that when there are dynamic pages, like my case with
/pages/blog/[blogPostSlug]
, it errors out becausepageProps
isundefined
when looping through it as found in.next/server/pages/...
. I'm not 100% positive that's the root cause, but it appears that the issue is fixed simply skipping the cases in whichpageProps
is undefined. See:Adding these lines in src/feed.ts fixes the issue:
Additionally, I found myself wanting to add more properties in the feed items. Currently,
next-rss
only setstitle
,id
,link
anddate
, but library feed supports more parameters, likeimage
,category
,description
andcontent
, so it made sense to allow users to customize them.Since I saw this project looked stale, I went ahead and made a fork to add the fix, a new feature of allowing to pass more item properties, and security fixes on the dependencies, so I could use it for my project. Here's the published version: https://www.npmjs.com/package/@guillermodlpa/next-rss
You can view here how the
next-rss.js
configuration ends up looking like with the newcreateFeedItem
config parameter:Source: https://github.com/guillermodlpa/site/blob/98669ef9fc4e9cbb35a528d3d1540ba1052e4dea/next-rss.js
The nice thing is that we can make
next-rss
adapt to the page props structure, as opposed to forcing next pages to use the structure defined internally in the package, as it is now.If your
next-rss
project is active and maintained, let me know. I'd love to contribute pull requests with those changes and other useful functionality. I believe this library has a lot of potential.Cheers
The text was updated successfully, but these errors were encountered: