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

如何将WooCommerce REST API连接到WordPress多站点线上服务器并解决空白页问题

空白页排查及WooCommerce REST API正确连接方案

首先你遇到的空白页90%是PHP代码报错但错误提示被关闭导致的,按以下步骤排查即可:

  • 第一步:开启PHP错误提示定位问题
    在测试代码最顶部加入两行配置,打开错误显示:
error_reporting(E_ALL);
ini_set('display_errors', 1);

重新运行页面就能看到具体报错信息,不需要盲猜。

  • 第二步:确认引入官方PHP客户端依赖
    你当前代码直接实例化Client类必然报错,因为没有引入WooCommerce官方REST API客户端:
    优先用Composer安装依赖:
    composer require automattic/woocommerce
    安装完成后在代码开头引入自动加载文件和命名空间:
require __DIR__ . '/vendor/autoload.php';
use Automattic\WooCommerce\Client;
  • 第三步:校验WooCommerce后台API配置
    • 进入WooCommerce后台→设置→高级→REST API,确认生成的密钥(ck、cs开头的两个字符串)权限设置为读写,权限不足会导致后续接口调用失败
    • 确认站点固定链接未使用「朴素」模式,否则REST API路由无法正常解析
    • 测试环境如果是HTTP站点或SSL证书无效,需要在客户端配置中加'verify_ssl' => false参数,生产环境务必使用HTTPS
  • 第四步:修改测试代码验证连通性
    你当前仅打印客户端实例没有实际意义,要调用真实接口验证连接是否正常,完整测试代码参考:
<?php
// 开启错误显示
error_reporting(E_ALL);
ini_set('display_errors', 1);

// 引入依赖
require __DIR__ . '/vendor/autoload.php';
use Automattic\WooCommerce\Client;

// 初始化客户端
$woocommerce = new Client(
    'https://myscustom.com/', // 替换为你的站点实际地址,末尾保留斜杠
    'ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', // 替换为你的消费者密钥
    'cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', // 替换为你的消费者密码
    [
        'wp_api' => true,
        'version' => 'wc/v3',
        // 测试环境SSL异常时可取消下一行注释
        // 'verify_ssl' => false
    ]
);

// 调用获取商品列表接口测试连通性
try {
    $product_list = $woocommerce->get('products', ['per_page' => 3]);
    print_r($product_list);
} catch (Exception $e) {
    echo '连接失败,错误信息:' . $e->getMessage();
}
?>
WordPress多站点适配说明

可以正常适配,只需注意两个规则:

  • 每个子站点需要单独在对应站点的WooCommerce后台生成独立的API密钥,主站密钥无法调用子站接口
  • 初始化客户端时,第一个参数要填写对应子站点的完整访问地址:如果是子域名模式就填子域名(比如https://store1.myscustom.com/),如果是子目录模式就填带目录的地址(比如https://myscustom.com/store1/)

内容的提问来源于stack exchange,提问作者tyrese humphreys

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:36:02