woocommerce_order_status_completed 没有数据

Posted

技术标签:

【中文标题】woocommerce_order_status_completed 没有数据【英文标题】:woocommerce_order_status_completed has no data 【发布时间】:2021-10-23 05:22:45 【问题描述】:

我已经为 woocommerce_order_status_completed 创建了一个 webhook,这个钩子在订单完成时成功触发。

问题是我没有从已完成的订单中获得除 ID 以外的任何数据。响应显示如下。

"action":"woocommerce_order_status_completed","arg":1640 

【问题讨论】:

【参考方案1】:

我用这段代码做了一个插件来解决这个问题:

function set_resource_for_webhook_payload_by_webhook_id($target_webhook_id, 
$desired_resource) 


add_filter('woocommerce_webhook_resource', function($resource, $webhook_id) use 
($target_webhook_id, $desired_resource) 
if($webhook_id == $target_webhook_id) 
        return $desired_resource;
    
    return $resource;
, 10, 2);


add_filter('woocommerce_valid_webhook_events', function($valid_events) use ($target_webhook_id) 
    try 
        $topic = wc_get_webhook($target_webhook_id)->get_topic();

        list($resource, $event) = explode('.', $topic);

        if(!empty($event)) 
            $valid_events[] = $event;
        

        return $valid_events;

     catch (Exception $e) 
        return $valid_events;
    
, 10);


//Replace number (3) bellow with your webhook ID:
add_action('init', function()
set_resource_for_webhook_payload_by_webhook_id(3, 'order');
);

希望对大家有所帮助。

【讨论】:

以上是关于woocommerce_order_status_completed 没有数据的主要内容,如果未能解决你的问题,请参考以下文章

函数参数

多重背包

合租房合同模板

启动代码分析 02

ACM数论 求幂乘

Windows下虚拟机安装Mac OS X —– VM12安装Mac OS X 10.11