如何使用 Next.js 将 Wordpress 配置为无头 CMS
Posted
技术标签:
【中文标题】如何使用 Next.js 将 Wordpress 配置为无头 CMS【英文标题】:How to configure Wordpress as headless CMS with Next.js 【发布时间】:2021-10-03 17:43:45 【问题描述】:我在 Xampp 的 htdocs
文件夹中有一个 WordPress
应用程序,并在 localhost:3000
中运行了一个单独的 Next.js 应用程序。
通常 WordPress 需要安装一个主题,您可以通过 http://yourdomain.com
浏览该站点。另一方面,可以从 http://yourdomain.com/wp-admin
访问管理 UI。
我的问题如下,如何将twentytwentyone
主题替换为我的Next.js 应用程序,该应用程序使用GraphQL
从WordPress 端点请求数据并将其作为根路径,换句话说http://yourdomain.com
必须加载 Next.js 应用程序,但 http://yourdomain.com/wp-admin
必须是 WordPress 管理 UI。 (没有主题)。
如果这不是理想的做法,并且应该分别部署 WordPress 和 Next.js 应用程序,我如何才能将 WordPress 仅用于管理 UI 并取消来自 WordPress 的任何其他呈现,例如默认页面使用twentytwentyone
主题并使 WordPress 仅作为 API 端点?
提前致谢。
【问题讨论】:
【参考方案1】:我已经完成了类似的事情。 我发现实现这一目标的最简单方法是在子域上安装 wordpress。
http://admin.yourdomain.com
然后我运行下一个应用程序
http://yourdomain.com
这样,您的下一个应用程序可以从http://admin.yourdomain.com
的 wordpress API 中提取信息
并且可以将wordpress应用的主页重定向到http://admin.yourdomain.com
到http://admin.yourdomain.com/wp-admin
这意味着访问 wordpress 站点的任何人都将被自动重定向到管理员登录,而 wordpress API 可以正常运行。
【讨论】:
谢谢你的想法,我会尽快试试这个。再次感谢:)以上是关于如何使用 Next.js 将 Wordpress 配置为无头 CMS的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Bootstrap 5 与 Next.js 一起使用?
如何将 firebase 的 firestore/admin sdk 与 next.js 一起使用