WooCommerce REST API 终极手册:包含实用示例

作者 : King 本文共4354个字,预计阅读时间需要11分钟 发布时间: 2025-05-10 共64人阅读

WooCommerce REST API 终极手册

管理网店成本高昂,店主往往需要处理许多手工流程。WooCommerce REST API 简化了这一工作流程,使您能够控制电子商务平台,并以编程方式管理和扩展 WooCommerce 商店。

使用 WooCommerce REST API 可以无缝地执行集成、自动化和扩展在线商店功能等操作。您可以节省资源和时间,知识兔用于进一步简化流程。此外,您还可以利用灵活的外部应用程序自定义商店的外观和感觉。

本文让您全面了解 WooCommerce REST API,使您能够以编程方式自动执行并增强电子商务操作。它分享了实用的见解、用例和代码示例,以促进 WooCommerce 商店的无缝集成和定制。

准备

要开始使用 WooCommerce REST API,您必须使用:

  • WooCommerce 3.5 或更高版本。
  • WordPress 4.4 或更高版本。
  • 用于 API 测试和交互的 PostmanInsomnia

注:虽然支持通过HTTP 或 HTTPS访问 API,但出于安全考虑,强烈建议使用 HTTPS。

开始使用 WooCommerce REST API

要开始使用,您需要创建一个 WordPress 网站,然后知识兔在 WooCommerce 中生成 API 凭据。

要生成 WooCommerce API 凭据,请按照以下步骤操作:

  1. 登录 WordPress 网站后台,从侧边栏选择 插件>已安装插件,然后知识兔启用 WooCommerce 插件。
  2. 激活插件后,知识兔选择 WooCommerce>Setting。然后知识兔单击 “Advanced” 选项卡,进入 WooCommerce 高级设置页面。
  3. 接下来,知识兔点击REST API。API 密钥凭证页面如下图:API 密钥凭证页面
  4. 单击 “Create an API Key” 或 “Add Key” 生成 API 密钥。
  5. 接下来,系统会提示你输入密钥的 Key details。这些信息包括描述、用户和权限。输入密钥描述,知识兔根据需要更改用户,并选择 Read/Write 权限。创建 woocommerce api 密钥
  6. 单击 Generate API Key。有了生成的 API 密钥,您就可以通过编程方式访问和管理商店数据。请注意您的消费者密钥和秘密,因为您将在下一节中使用它们进行 API 请求。woocommerce api key

了解 WooCommerce REST API 架构

WooCommerce API 基于 REST 架构。您只需通过适当的方法(GET、POST、PUT、DELETE)向端点发送请求,即可对 WooCommerce 数据(如订单、产品和客户)进行读取和写入操作。

端点由请求方法和标准 URL 组成。有了端点,你就可以使用自己选择的工具(Postman 或 Insomnia)来访问不同的存储数据。

获取产品列表

在获取产品列表之前,请确保已在商店中添加了一些产品。您必须将固定链接结构更改为朴素以外的结构。

从侧边栏单击 “设置“>”固定链接“,然后知识兔更改固定链接结构。如果知识兔不做此更改,标准 URL 端点将无法正常工作。单击保存更改

接下来,打开 Postman 并添加一个新请求。在 URL 部分,知识兔使用 https:///wp-json/wc/v3/products。确保将 替换为 WooCommerce 网站的域名。

在 “authorization” 选项卡中,知识兔选择 “Basic Auth,并输入消费者密钥作为 Username,消费者秘密作为 Password。您必须在向 WooCommerce REST API 提出的每个请求中添加此授权。发送请求后,您应该会收到一份商店中所有产品的列表。

在 Postman 中获取产品列表

在 Postman 中获取产品列表。

通过 REST API 管理产品

产品对象有一系列属性,知识兔可以直接对产品进行分组、管理库存和设置价格,所有这些都可以通过编程实现。

比如说,您想在自己创建的产品组中添加一个新产品–您所需要的只是 grouped_products 属性中的产品组 ID。

要管理库存,可使用 manage_stockstock_status 属性,分别设置为 true 或 false 以及 instockonbackorder 和 outofstock

下面我们来看看如何添加和更新现有产品的详细信息。

使用 WooCommerce API 添加产品

1. 在 Postman 中添加一个新请求,并将请求方法改为 POST。重复使用上一节中使用的端点 URL。点击 “Body” 选项卡,知识兔选择 “raw“,并选择 JSON 作为正文格式。JSON 有效载荷包含产品名称、类型(简单、可变或分组)、描述和简短描述。它还包含类别、标签和图片,您可以根据需要添加。

{"name": "iPhone 15 Pro Max","type": "simple","description": "","short_description": "","categories": [],"tags": [],"images": []}

2.  执行请求。如果知识兔产品创建成功,您将收到一个产品对象作为响应。请记下产品 ID,因为下一节中会用到它。

创建产品

创建产品

使用 WooCommerce API 编辑产品

让我们编辑一下刚刚创建的记录。

1. 在 “Body” 选项卡中,添加以下 JSON 正文:

{"name": "iPhone 15 Pro"}

由于只需更新 name 字段,因此无需包含其他属性。在这种情况下,将其更改为 “iPhone 15 Pro”。端点 URL 应为https://yourdomain/wp-json/wc/v3/products/

2. 用上一节创建的产品 ID 替换id。不要忘记将请求方法改为PUT。执行请求后,您将收到一个产品对象作为响应。您可以检查响应中的产品名称,以确认更新是否成功。

编辑产品

编辑产品

使用 REST API 进行订单管理

WooCommerce REST API 可无缝检索订单和更新订单状态,从而促进订单处理自动化。它可让您以编程方式检索订单,知识兔根据日期、状态或客户等各种条件对订单进行过滤,然后知识兔有效地处理订单。

这包括更新订单状态,以反映履行或处理的各个阶段。WooCommerce REST API 可确保准确跟踪订单并与客户沟通。此外,您还可以通过 API 管理退款,包括处理退款请求、自动处理退款以及更新订单状态(退款后)。

让我们来看看如何获取最近的订单并将订单状态更新为 “已完成”。

使用 WooCommerce API 获取最近订单

1. 在 Postman 中添加一个新请求,知识兔使用 GET 请求获取订单。端点 URL 应如下所示:

https:///wp-json/wc/v3/orders

2. 在Params 选项卡中,输入 key(键)为after,value 为订单创建日期之后的日期。在本例中,知识兔使用 2024-03-08T00:00:00。您可以根据需要修改该日期。这样,您就可以只过滤特定日期后的订单。其他 Postman 设置保持默认。

3. 确保你在 WooCommerce 商店中下了几笔订单,以避免返回空列表。执行请求后,您将得到一份符合指定条件的所有订单列表。

获取给定日期后的近期订单

获取给定日期后的近期订单

更新订单状态

要更新订单状态,请获取您已下订单的 ID。在 Postman 中添加一个新请求,并将其请求改为 PUT。使用以下端点进行更新:https://yourdomain/wp-json/wc/v3/orders/。在 “Body” 选项卡中,添加以下 JSON 正文:

{"status": "completed"}

执行请求后,您应该会收到订单已完成的回复。

更新订单状态

更新订单状态

客户管理和参与

通过 WooCommerce REST API,企业可以高效地创建新客户档案、编辑现有客户详细信息,并检索购买历史和偏好等综合信息。

通过分析这些信息,企业可以定制个性化营销策略,知识兔根据个人购物行为分享有针对性的促销、产品推荐和忠诚度奖励。

这种客户数据管理水平使企业能够与客户建立更牢固的关系,提高客户满意度,并促进重复购买。

使用 WooCommerce API 添加客户

1. 向以下端点 URL 发送 POST 请求:https:///wp-json/wc/v3/customers。别忘了像之前那样加上授权。

2. 在 “Body” 选项卡中,知识兔使用此 JSON 对象创建客户:

{"email": "a.briann@gmail.com","first_name": "Brian","last_name": "Abraham","role": "customer","username": "briann.abraham","billing": {"first_name": "Brian","last_name": "Abraham","company": "","address_1": "969 Market","address_2": "","city": "San Francisco","state": "CA","postcode": "94103","country": "US","email": "a.brian@gmail.com","phone": "(555) 555-5555"},"shipping": {"first_name": "Brian","last_name": "Abraham","company": "","address_1": "969 Market","address_2": "","city": "San Francisco","state": "CA","postcode": "94103","country": "US"}}

JSON 对象包含客户的基本信息,如电子邮件、姓名、角色和用户名。它还分享账单和发货信息,包括客户的地址、地点和电话号码。

3. 执行请求,你应该会收到一个包含客户对象的响应。记住客户 ID,在下一节中将用它来检索客户。

使用 WooCommerce API 通过 ID 检索客户

让我们通过 ID 检索您刚刚创建的用户。

  1. 使用 GET 请求方法创建一个新请求。
  2. 使用相同的端点 URLhttps:///wp-json/wc/v3/customers/,并添加要获取的客户 ID。

WooCommerce REST API 的高级用例

除了管理店铺资源,您还可以使用 WooCommerce REST API 完成其他复杂的任务,例如与 CRM 集成、库存管理自动化以及自定义分析和报告。

使用 REST API 将您的 WooCommerce 商店集成到您选择的 CRM 中,知识兔可以确保每当添加一个客户时,该客户就会立即反映在您的 CRM 面板上,成为一个潜在客户。这样就能轻松管理客户信息和订单历史的同步。

REST API 还可以实现自动库存管理。通过集成外部库存管理,您可以实时了解库存和产品可用性。这也适用于自定义报告和分析。

利用 WooCommerce REST API,您可以建立报告功能,知识兔让您鸟瞰全局,知识兔帮助决策、确定趋势和进行预测。

以下是将 WooCommerce 客户数据与 CRM 平台同步的代码片段:

 'wc/v3' // WooCommerce WP REST API version]);// CRM API endpoint and key$crm_api_url = 'https://your-crm-api-url/api';$crm_api_key = 'YOUR_CRM_API_KEY';try {// fetch customers from woocommerce store$customers = $woocommerce->get('customers');// Initialize cURL$ch = curl_init();// Check if cURL initialization succeededif ($ch === false) {throw new Exception('Failed to initialize cURL');}foreach ($customers as $customer) {$crm_customer_data = array('first_name' => $customer->first_name,'last_name' => $customer->last_name,'email' => $customer->email,// Other fields);// cURL optionscurl_setopt($ch, CURLOPT_URL, $crm_api_url . '/customers');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($crm_customer_data));curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $crm_api_key,'Content-Type: application/json',));// Execute cURL request$crm_response = curl_exec($ch);// Check for cURL errorsif ($crm_response === false) {throw new Exception('cURL error: ' . curl_error($ch));}// Check HTTP status code$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);if ($http_code !== 200) {throw new Exception('Failed to sync customer data with CRM: ' . $http_code);}echo 'Customer data synced with CRM successfully.';}curl_close($ch);} catch (Exception $e) {echo 'Error: ' . $e->getMessage();}

这是一个 PHP 代码片段,它首先与 WooCommerce REST API 建立连接,然后知识兔从 WooCommerce 商店检索客户。最后,它使用 cURL 将客户发送到 CRM。这段代码包含了错误处理功能,知识兔用于管理流程故障。它使用了一个名为 automattic/woocommerce 的 PHP 库,你可以使用 Composer 安装该库。

此处使用的 CRM 是为了演示将客户数据同步到任何 CRM 的一般方法。

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看下载!

如何免费获取密码?

点击下载

小鱼网是一个美好的开源学习社区,学习编程,学习WordPress,下载WordPress插件主题,
小鱼网 » WooCommerce REST API 终极手册:包含实用示例

常见问题FAQ

发表回复

分享最优质的学习资料

立即查看 了解详情