7

我有兴趣使用Gatsby使用Contentful中的内容构建Netlify静态站点

Netlify 有这个很好的入门 Gatsby 指南:<a href="https://www.netlify.com/blog/2016/02/24/a-step-by-step-guide-gatsby-on-netlify" rel="noreferrer">https://www.netlify.com/blog/2016/02/24/a-step-by-step-guide-gatsby-on-netlify

但我有点不确定如何将 Contentful 融入其中。我是否需要编写脚本来将我的 Contentful 内容转换为 Gatsby 'markdown'?

任何想法,想法,链接表示赞赏!

4

3 回答 3

8

自从发布此问题以来,已将官方 Contentful 插件添加到 Gatsby 的集合中(由 Gatsby 团队创建的官方插件,而不是 Contentful):https ://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-满足的

示例站点的 src 代码在这里:https ://github.com/gatsbyjs/gatsby/tree/master/examples/using-contentful

该插件通过处理 markdowngatsby-transformer-remark并生成生成的 HTML,您可以通过 Gatsby 的 GraphQL 服务器访问它,其中包含来自示例 proj的类似查询:

 contentfulProduct(id: { eq: $id }) {
      productName {
        productName
      }
      productDescription {
        childMarkdownRemark {
          html
        }
      }
      price
    }

您可以使用该插件连接到 Content API(用于已发布的资产/内容)和/或 Preview API(用于已发布草稿的内容/资产)。

我们使用NODE_ENV从开发中的 Preview API 和生产中的 Content API 中提取。

于 2017-11-04T17:17:28.107 回答
3

这是我用来从 Contentful 中提取数据的脚本: https ://gist.github.com/ivanoats/e79ebbd711831be2536d1650890055c4

我在 gatsby 构建之前通过 npm run 脚本运行它。

我很想开发一个插件或为这个过程获得更好的架构的想法。

我在Aerobatic 博客上更详细地写了一篇关于这种架构的文章

于 2016-07-04T18:43:43.783 回答
0

现在最好的选择是编写一个脚本,将 Contentful 中的内容同步到 Gatsby 站点的 pages 目录。

然而,有计划在 Gatsby 中增加支持,以实现半自动。早期的日子还在这里!有关更多信息,请参阅此问题https://github.com/gatsbyjs/gatsby/issues/324

于 2016-06-14T16:45:24.467 回答