0

目标

我想将页面数据从旧站点迁移(也许转换)到新站点。

大纲

  • 我将为客户在现有的 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 一起使用吗?
4

1 回答 1

2

首先,请随时在我们的开发者社区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 上的这个演示,了解如何去做。

于 2020-01-03T10:33:00.943 回答