Я не могу понять, как использовать gatsby-plugin-feed
для добавления некоторого пользовательского контента из моего frontmatter в RSS-канал. Вот мой конфиг:
{
resolve: `gatsby-plugin-feed`,
options: {
query: `
{
site {
siteMetadata {
title
description
siteUrl
site_url: siteUrl
}
}
}
`,
feeds: [
{
serialize: ({ query: { site, allMarkdownRemark } }) => {
return allMarkdownRemark.edges.map(edge => ({
...edge.node.frontmatter,
description: edge.node.excerpt,
url: site.siteMetadata.siteUrl + edge.node.fields.slug,
guid: site.siteMetadata.siteUrl + edge.node.fields.slug,
}));
},
query: `
{
allMarkdownRemark(
limit: 1000,
sort: { order: DESC, fields: [fields___prefix] },
filter: { fields: { source: {eq: "posts"}, slug: { ne: null } } }
) {
edges {
node {
excerpt
html
fields {
slug
prefix
}
frontmatter {
title
subtitle
tags
categories
youtube
}
}
}
}
}
`,
output: '/rss.xml',
},
],
},
},
Я думал, что использование оператора распространения в объекте edge.node.frontmatter добавит все поля, но в этом элементе отсутствует тонна полей frontmatter.
Я уверен, что что-то упустил, или я что-то не понимаю в RSS-каналах. Кто-нибудь может указать мне правильное направление? Спасибо.