gatsby - Gatsby.js - 导出 sanity.io 数据(可能在 markdown 文件中导出 netlify-cms)
问题描述
目标
我想将页面数据从旧站点迁移(也许转换)到新站点。
大纲
- 我将为客户在现有的 Gatsby 网站上进行品牌重塑。
- 客户向我提供了 Sanity-Studio 和 Gatsby 的源文件
- 我能够在本地构建 Sanity-Studio 和 Gatsby 站点
问题
- 据我了解,实际数据仍然托管在之前开发人员的 sanity.io 帐户上。
- 我无法访问这些数据,甚至在本地也无法访问。
- 如果不使用原始帐户登录,我无法将新帐户添加到本地 sanity-studio。
- 我更喜欢自动执行此操作,因为总共大约有 100 页。
问题
第1部分
- 有没有办法接收/访问这些数据并能够将其迁移(或导出/导入)到我的新(不同)Gatsby 站点?
第2部分
- 我打算将 Sanity.io 排除在外并使用 Gatsby.js + Netlify-CMS -> 我可以将所有数据从 Sanity.io 转换为 Markdown 文件,以便我可以将它与 Netlify-CMS 一起使用吗?
解决方案
首先,请随时在我们的开发者社区或hello@sanity.io上联系我们,看看我们是否能找到一些办法来获取您客户的内容,并让您继续使用当前堆栈顺利构建。
我仍然会在这里尝试给你一些答案。
第1部分
您可以在导出端点获得数据集公共部分的完整导出:curl https://<projectId>.api.sanity.io/v1/data/export/<dataset>/ > backup.ndjson
. 资产文档将包含您必须单独下载的资产二进制文件的 URL。在我们的 export-module 中查看我们如何处理它。我注意到,如果该模块允许您在不需要令牌的情况下导出公共数据,那将会很有帮助。
另一种方法是使用 Gatsby,查询您需要的数据并将其输出为 Markdown/JSON,以您需要的方式从页面模板中结构化。
第2部分
如果您想将数据从 Sanity 转换为 Markdown,这是完全可能的。查看Codesandbox 上的这个演示,了解如何去做。
推荐阅读
- javascript - 自定义画廊 Gutenberg 块中的空图像数组
- kubernetes - 为什么创建 kubernetes 集群后 /var/lib/cni/networks 为空?
- spring - 防止数据在重试失败调用时持续存在 - Spring Retry
- android - Xamarin 形成日期选择器绑定日期并在日期更改时执行某些操作
- javascript - 如何使用javascript根据另一个div元素的位置放置弹出窗口并做出反应?
- jsf - Primefaces Datatable过滤问题,用于下拉作为数据输入
- angular - 角度错误 TS2339 属性在类型上不存在
- sql - 在其他条件下查找 MIN 值 Teradata
- python - 获取 matplotlib 分散的 3D 点以按 3 个数组的乘积显示颜色
- c# - 堆叠 WPF 窗口