细节
WooCommerce 2.6于2016年发布,包含一个基于WordPress JSON API的新 REST API。这使得旧的REST API(现在称为旧版REST API)已过时,我们已将其记录为已弃用。事实上,它需要从管理区域显式启用才能使用。
我们决定从 WooCommerce 9.0 版本(计划于 2024 年 6 月发布)开始从 WooCommerce 中删除旧版 REST API。但是,我们将提供一个单独的 WooCommerce 扩展,其中将包括仍然需要它的网站的所有已删除代码。
出于所有实际目的,在 WooCommerce 9.0 及更高版本中安装和激活新扩展在功能上等同于在 WooCommerce 8.9 及更早版本中启用旧版 REST API:API 的客户端不会发生任何变化,并且客户端密钥相同将继续工作。
此外,配置为使用旧版REST API来组成其有效负载的 Webhooks(在本文中称为“旧版 Webhooks”)将从 WooCommerce 9.0 开始停止工作,除非安装了新扩展。
为什么会有这样的改变?
我们不断致力于改善用户和开发者的 WooCommerce 体验。作为其中的一部分,我们有时需要进行一些清理。删除旧版 REST API(过去几年我们一直不鼓励使用该 API)将使 WooCommerce 发行包变得更轻,并有望帮助使 WooCommerce REST API 更易于理解。
我如何知道这是否影响我?
如果您的网站至少满足以下条件之一(或者您预计到 WooCommerce 9.0 发布时该条件将成立),则此更改将对您产生影响:
- 您已在 WooCommerce 安装中启用旧版 REST API。
要检查旧版 REST API 是否已启用,请转到WooCommerce > 设置 > 高级 > 旧版 API。下面的“启用旧版 REST API”框被选中意味着旧版 REST API 已启用。
![WooCommerce旧版REST API将转移到WooCommerce 9.0中的专用扩展 1 WooCommerce旧版REST API将转移到WooCommerce 9.0中的专用扩展](https://gplwp.eastfu.com/wp-content/uploads/2023/11/482950.png)
- 您的 WooCommerce 安装中有旧版Webhook 。
要检查您的商店中是否有旧版 Webhooks,请转到WooCommerce > 设置 > 高级 > Webhooks。从 WooCommerce 8.3 开始,您将看到一个“旧版”部分,其中包含您网站中存在的此类 Webhook 数量的计数。
![WooCommerce旧版REST API将转移到WooCommerce 9.0中的专用扩展 2 WooCommerce旧版REST API将转移到WooCommerce 9.0中的专用扩展](https://gplwp.eastfu.com/wp-content/uploads/2023/11/482951.png)
如果您有 WooCommerce 8.2 或更早版本,则需要单独检查每个 Webhook。单击 Webhook 名称可打开其详细信息页面,旧版 Webhook 的API 版本设置值将是“旧版 API v3(已弃用)”。
![WooCommerce旧版REST API将转移到WooCommerce 9.0中的专用扩展 3 WooCommerce旧版REST API将转移到WooCommerce 9.0中的专用扩展](https://gplwp.eastfu.com/wp-content/uploads/2023/11/482952.png)
如果其中任何一项适用于您,您的站点将需要安装新扩展,以便通过旧版 REST API 与您的站点进行通信的应用程序不会受到影响,并且旧版 Webhook 可以继续工作。理想情况下,这应该在您的服务器升级到 WooCommerce 9.0 之前发生,以避免任何中断。
WooCommerce 8.3 还将在启用旧版 REST API或旧版 Webhook 的网站中添加可忽略的警告通知。
我应该采取什么行动?
如果您预计在 WooCommerce 9.0 发布时仍需要启用旧版 REST API,建议的操作是在新扩展可用后立即安装它。
我可以在 WC 9.0 发布之前安装即将推出的扩展吗?
在 WooCommerce 9.0 发布之前,可以随时安全地安装新扩展。这是因为,只要扩展检测到当前在您的服务器中运行的 WooCommerce 版本仍然具有旧版 REST API,它就不会初始化自身,以免干扰内置代码。
我可以依靠新扩展来永远支持旧版REST API吗?
请注意,新扩展不会无限期维护,因此我们强烈建议您更新任何依赖旧版 API 或旧版 Webhooks 的系统,并迁移到当前的 REST API。
我们正在考虑在启用旧版 REST API 或旧版 Webhook 的网站上自动安装新扩展,作为升级到 WooCommerce 9.0 的一部分,但这是我们需要进一步探索的内容。评论这篇文章,让我们知道您是否认为这对您有益。