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

如何从WooCommerce结账页提取数据至Google Customer Reviews代码片段

WooCommerce结账页部署Google Customer Reviews动态数据解决方案

1. 查看订单成功页的可用对象数据

注意:用户未完成下单时的结账页(checkout)没有生成有效订单对象,你需要在**订单成功页(thankyou页)**调试和部署代码。查看对象的方法如下:

  • 临时调试输出:找到WooCommerce的订单成功模板文件woocommerce/templates/checkout/thankyou.php,在合适位置添加以下代码(建议用子主题覆盖模板,避免主题更新丢失):
// 打印订单对象的所有结构化数据
echo '<pre>';
print_r($order->get_data());
echo '</pre>';

访问订单成功页后,就能看到订单对象包含的所有字段(比如账单邮箱、订单号、配送地址等)。

  • 官方方法参考:直接查看WooCommerce的WC_Order类文档,里面列出了所有安全的getter方法(比如get_billing_email()、get_order_number()),这些是官方推荐的调用方式,比直接访问对象属性更稳定。

2. 调用对象提取数据并嵌入Google代码

通过WooCommerce的钩子实现动态数据填充,无需硬编码。推荐用woocommerce_thankyou钩子(该钩子会自动传入订单ID),示例代码如下:

add_action('woocommerce_thankyou', 'embed_google_customer_reviews');
function embed_google_customer_reviews($order_id) {
    // 获取订单对象
    $order = wc_get_order($order_id);
    if (!$order) return;

    // 提取所需动态数据
    $customer_email = $order->get_billing_email();
    $order_number = $order->get_order_number();
    // 格式化订单创建时间为Google要求的ISO 8601格式
    $order_date = $order->get_date_created()->format('c');
    $shipping_country = $order->get_shipping_country();
?>
    <!-- Google Customer Reviews 动态代码 -->
    <script src="https://apis.google.com/js/platform.js?onload=renderOptIn" async defer></script>
    <script>
        window.renderOptIn = function() {
            window.gapi.load('surveyoptin', function() {
                window.gapi.surveyoptin.render({
                    "merchant_id": "你的商家ID", // 替换为你的Google商家ID
                    "order_id": "<?php echo esc_js($order_number); ?>",
                    "email": "<?php echo esc_js($customer_email); ?>",
                    "delivery_country": "<?php echo esc_js($shipping_country); ?>",
                    "estimated_delivery_date": "<?php echo esc_js($order_date); ?>"
                    // 按需添加其他参数
                });
            });
        }
    </script>
<?php
}

关键说明:

  • 把代码添加到子主题的functions.php文件或自定义插件中,不要直接修改核心文件。
  • 用esc_js()函数转义输出的动态数据,防止XSS安全问题。
  • 所有订单数据都通过WC_Order类的官方getter方法获取,保证兼容性和稳定性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 20:57:21