Netlify有一个很好的开始Gatsby指南: https://www.netlify.com/blog/2016/02/24/a-step-by-step-guide-gatsby-on-netlify
但是我有点不确定如何将Contentful带入混合体中。我是否需要编写脚本来将我的Contentful内容转换为Gatsby' markdown'?
任何想法,想法,链接都赞赏!
答案 0 :(得分:3)
这是我用来从Contentful中提取数据的脚本: https://gist.github.com/ivanoats/e79ebbd711831be2536d1650890055c4
我在gatsby build之前通过npm运行脚本运行它。
我很乐意在插件上工作或者为这个过程获得更好的架构想法。
上更详细地撰写了关于此架构的帖子答案 1 :(得分:3)
自从发布此问题以来,官方的Contentful插件已被添加到Gatsby的收藏中(由盖茨比团队创建的官方内容,而非Contentful):https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-contentful
示例网站的src代码位于:https://github.com/gatsbyjs/gatsby/tree/master/examples/using-contentful
插件通过gatsby-tranfsormer-remark
处理降价并生成结果HTML,您可以通过Gatsby的GraphQL服务器访问该问题,并使用来自the example proj的查询:
contentfulProduct(id: { eq: $id }) {
productName {
productName
}
productDescription {
childMarkdownRemark {
html
}
}
price
}
您可以使用该插件将两者连接到Content API(针对已发布的资源/内容)和/或预览API(针对已发布的和草案内容/资产)。
我们使用NODE_ENV
从dev中的Preview API和生产中的Content API中提取。
答案 2 :(得分:0)
现在最好的选择是编写一个脚本,将Contentful中的内容同步到您的Gatsby网站页面目录。
然而,计划在Gatsby中添加支持以实现半自动化。早期的日子还在这里!有关更多https://github.com/gatsbyjs/gatsby/issues/324
的信息,请参阅此问题