You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地WordPress作无头CMS,部署Next/Gatsby至Netlify的方案咨询

解决方案:本地WordPress作为无头CMS,部署静态站点到Netlify(无需Netlify连接本地WP)

不管是Gatsby还是Next.js,都能实现你的需求——本地完成全量构建,把静态产物部署到Netlify,完全切断Netlify与本地WordPress的连接,以下是具体实现方式:

Gatsby 实现方式

Gatsby本身是静态站点生成器(SSG),核心逻辑就是在构建阶段拉取所有数据源内容,打包成独立的静态文件。

  • 本地配置gatsby-source-wordpress插件,连接你的本地WordPress站点,确保能正常拉取内容。
  • 执行gatsby build命令,构建完成后,项目根目录会生成public文件夹,里面包含了所有静态HTML、CSS、JS和资源文件。
  • 直接将public文件夹上传到Netlify:可以用Netlify控制台的拖拽上传功能,或者把public内的内容推送到Git仓库,让Netlify关联该仓库自动部署。
  • 部署完成后,Netlify上的站点是纯静态的,不会再发起任何请求到你的本地WordPress。

Next.js 实现方式

Next.js支持SSG(静态站点生成)模式,同样可以在本地完成内容拉取和构建,再部署静态产物。有两种方案可选:

方案1:构建时直接拉取本地WP内容

  • 在页面组件中使用getStaticProps(或getStaticPaths用于动态路由),在本地构建阶段请求本地WordPress的REST API,获取所需内容并生成静态页面。
  • 执行next build完成构建,再运行next export命令,将静态页面导出到out文件夹。
  • 将out文件夹上传到Netlify,或推送到Git仓库让Netlify部署。

方案2:先导出WP内容为JSON,再用Next.js读取

  • 编写简单的Node.js脚本,调用本地WordPress的REST API,将文章、页面等需要的内容保存为JSON文件(比如放到项目的data目录下)。
  • 在Next.js页面的getStaticProps中,直接读取本地的JSON文件,以此生成页面。
  • 执行next build && next export生成out文件夹,上传到Netlify即可。

注意事项

  • 后续更新内容时,需要在本地重新执行构建流程,再将新的静态产物上传到Netlify。
  • 确保本地构建时,所有需要展示的内容都已被拉取并打包到静态文件中,避免出现缺失内容的情况。

内容的提问来源于stack exchange,提问作者Mr Magoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 06:01:00