我有一个使用 Gatsby 开发的网站。我使用 WordPress 为网站发布博客,并且正在使用 GraphQL 获取博客。一切正常,我在 S3 上部署了网站。生产部署后,当我在 WordPress 中发布新博客时,它没有在使用 GraphQL 的网站中列出。我不得不重新部署代码以使其正常工作。
有没有其他方法可以在生产中加载 WordPress GraphQL 数据而无需重建和重新部署?
我有一个使用 Gatsby 开发的网站。我使用 WordPress 为网站发布博客,并且正在使用 GraphQL 获取博客。一切正常,我在 S3 上部署了网站。生产部署后,当我在 WordPress 中发布新博客时,它没有在使用 GraphQL 的网站中列出。我不得不重新部署代码以使其正常工作。
有没有其他方法可以在生产中加载 WordPress GraphQL 数据而无需重建和重新部署?
你所描述的是正常行为。Gatsby 是一个静态站点生成器,因此就运行时正在构建的内容而言,您的数据是“静态的” gatsby build
。如果源中的某些内容发生更改,例如发布帖子,您需要重建站点以使它们可以通过 GraphQL 使用,因此 Gatsby。
您想要实现的称为 webhook:触发另一个动作的动作。就像发布帖子时一样,触发新部署以强制在生产环境中发布该帖子。
您可以按照这篇文章了解更适合您的方法。
如果您使用的是 Gatsby 的 v4,您可以使用新的SSR (服务器端渲染)品牌功能来提供来自服务器或DSG (延迟静态生成)的数据,以实现部分静态、部分服务器端的组合方法一边送达。