Browse Source

filter drafts from blog list

restructure
Garrit Franke 4 years ago
parent
commit
031f17ab6c
  1. 1
      components/BlogList.js
  2. 16
      lib/rss.js

1
components/BlogList.js

@ -16,6 +16,7 @@ const BlogList = ({ posts }) => {
<ul className="list">
{posts.length > 1 &&
posts
.filter((post) => !post.frontmatter.draft)
// Ternary operator is used to fix chromium sorting
// See: https://stackoverflow.com/a/36507611
.sort((a, b) => (a.frontmatter.date < b.frontmatter.date ? 1 : -1))

16
lib/rss.js

@ -53,12 +53,14 @@ const getRssXml = (blogPosts) => {
const blogPostsRssXml = (blogPosts) => {
let latestPostDate = "";
let rssItemsXml = "";
blogPosts.forEach((post) => {
const postDate = Date.parse(post.frontmatter.date);
if (!latestPostDate || postDate > Date.parse(latestPostDate)) {
latestPostDate = post.frontmatter.date;
}
rssItemsXml += `
blogPosts
.filter((post) => !post.frontmatter.draft)
.forEach((post) => {
const postDate = Date.parse(post.frontmatter.date);
if (!latestPostDate || postDate > Date.parse(latestPostDate)) {
latestPostDate = post.frontmatter.date;
}
rssItemsXml += `
<item>
<title>${post.frontmatter.title}</title>
<link>
@ -70,7 +72,7 @@ const blogPostsRssXml = (blogPosts) => {
<![CDATA[${post.frontmatter.title}]]>
</description>
</item>`;
});
});
return {
rssItemsXml,
latestPostDate,

Loading…
Cancel
Save