订单后的 WooCommerce 挂钩未触发

问题描述 投票:0回答:1

我正在尝试在 WooCommerce 中的订单完成后添加自定义 API 调用。

我遇到了一个问题,似乎没有一个钩子被触发。 每当我下订单并付款时,一切都会正常工作,但不会触发任何 woocommerce“订单”挂钩。

到目前为止,我已经尝试过以下钩子:

  • woocommerce_ payment_complete
  • woocommerce_谢谢
  • woocommerce_order_status_completed
  • woocommerce_order_status_changed
  • woocommerce_new_order
  • woocommerce_ payment_complete_order_status_completed

我为每个功能尝试了一个简单的功能,发送电子邮件,并记录到 debug.log。 当我下订单并付款时,这些钩子都不会被触发。

我正在为我的 WordPress 网站使用 Oxygen Builder。

这是使用其中一个钩子的一些代码的示例:

    add_action( 'woocommerce_payment_complete','callback_function_2' );

function callback_function_2( $orderid ){
    
    $to_email = '[email protected]';
    $payment = "payment text - woocommerce_payment_complete";
    $headers = 'From: Your Name <[email protected]>' . '\r\n';
    wp_mail($to_email, 'subject 2', $payment, $headers );

  exit;
}

有人遇到过这个问题吗?

我尝试过的一些主题:

php wordpress woocommerce hook-woocommerce
1个回答
-1
投票

检查此代码:

add_action('woocommerce_payment_complete', 'callback_function_2', 10, 1);

function callback_function_2($order_id) {
    $order = wc_get_order($order_id);

    $to_email = '[email protected]';
    $payment = "payment text - woocommerce_payment_complete";
    $headers = 'From: Your Name <[email protected]>' . '\r\n';
    
    wp_mail($to_email, 'subject 2', $payment, $headers);
}
© www.soinside.com 2019 - 2024. All rights reserved.