frontend - 如何为 Strapi CMS 更改 Netlify CMS?
问题描述
我是这个前端世界的新手,我对 React 和 GraphQL 有一些了解,这就是为什么我决定尝试使用Gatsby实现一个测试博客,因为它看起来非常流行且易于使用。
我也想让我的手进入 Material UI,所以我正在使用这个 Gatsby 启动器:https ://www.gatsbyjs.org/starters/Vagr9K/gatsby-material-starter
这个启动器似乎包含了与Netlify CMS的集成,所以我想改变它并开始使用Strapi CMS,这样我就可以在那里获得内容。
关于如何做到这一点的任何想法?
解决方案
您的问题有很多东西,如果没有,我将尝试逐步回答,如果您需要有关如何创建页面等的更多详细信息,请告诉我,如果需要,我将更新我的答案以添加更多详细信息.
如果你想将源代码从 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 访问。
您可以在其启动器存储库中查看更多信息。
推荐阅读
- ios - 无法删除 UITableViewCell 内的 UILabel 中的删除线属性
- reinforcement-learning - 如何为具有未知动力学的机器人创建环境以进行 q-learning?
- python - 如何使用 aiohttp multipartwriter 发送图像?
- laravel - 带有身份验证中间件的表单发布请求在 Laravel 8 中引发错误 419 页面已过期
- ios - Realm Swift:对象列表不起作用
- list - 是否有可能在 O(n) 时间内找到列表中的所有最小元素?
- excel - Excel 宏在 Personal.xlsb 中运行不正确
- .net - “X509Certificate2”不包含“CopyWithPrivateKey”的定义
- python - python 中 (VAV^T).diagonal 的更快替代方案
- wordpress - 我的网站对某些用户可用,但对某些用户不可用