首页 > 解决方案 > 如何为 Strapi CMS 更改 Netlify CMS?

问题描述

我是这个前端世界的新手,我对 React 和 GraphQL 有一些了解,这就是为什么我决定尝试使用Gatsby实现一个测试博客,因为它看起来非常流行且易于使用。

我也想让我的手进入 Material UI,所以我正在使用这个 Gatsby 启动器:https ://www.gatsbyjs.org/starters/Vagr9K/gatsby-material-starter

这个启动器似乎包含了与Netlify CMS的集成,所以我想改变它并开始使用Strapi CMS,这样我就可以在那里获得内容。

关于如何做到这一点的任何想法?

标签: frontendcontent-management-systemgatsbynetlifystrapi

解决方案


您的问题有很多东西,如果没有,我将尝试逐步回答,如果您需要有关如何创建页面等的更多详细信息,请告诉我,如果需要,我将更新我的答案以添加更多详细信息.

如果你想将源代码从 Netlify 更改为Strapigatsby-config.js ,你需要在你的, 替换插件中设置它,gatsby-plugin-netlify-cms如下所示:

  {
    resolve: `gatsby-source-strapi`,
    options: {
      apiURL: `http://localhost:1337`,
      queryLimit: 1000, // Default to 100
      contentTypes: [`article`, `user`],
      //If using single types place them in this array.
      singleTypes: [`home-page`, `contact`],
      // Possibility to login with a strapi user, when content types are not publically available (optional).
      loginData: {
        identifier: "",
        password: "",
      },
    },
  },

请注意,您必须安装所需的插件并删除不必要的插件,以减少捆绑包并提高使用启动器时的性能。

下一步是使用 GraphQL 从源 CMS(文章、帖子、页面等)创建页面。也许这个博客可以帮助你。但作为一个简短的总结,您需要在您的中创建查询以gatsby-node.js从 Strapi CMS 检索数据并使用 Gatsby 的 API 创建页面。

这个想法与您的初学者相同,但是,您将使用 Strapi CMS 提供的对象,而不是在页面创建中使用 gatsby-source-filesystem 和 allMarkdownRemark。您可以使用 gatsby develop 并输入localhost:8000/___graphql检查查询和可用对象。

请记住,您将始终从多个来源查询静态数据(即:预下载的数据),因此当您运行开发命令时,数据会被下载并通过 GraphQL 访问。

您可以在其启动器存储库中查看更多信息。


推荐阅读