php - 消息信息 WooCommerce
问题描述
将 WooCommerce 用于数字产品,众所周知,对于此类产品或付款状态,它始终处于处理状态。要解决此问题,请使用以下代码解决此问题,但“成功收到付款”通知消息未同步。有谁知道如何解决它?
add_action( 'woocommerce_order_status_changed', 'ts_auto_complete_by_payment_method' );
function ts_auto_complete_by_payment_method( $order_id ) {
if ( !$order_id ) {
return;
}
global $product;
$order = wc_get_order( $order_id );
if ( $order->data[ 'status' ] == 'processing' ) {
$payment_method = $order->get_payment_method();
if ( $payment_method != "cod" ) {
$order->update_status( 'completed' );
}
}
}
解决方案
add_action( 'woocommerce_before_thankyou', 'update_order_status_and_show_info' );
function update_order_status_and_show_info( $order_id ) {
if ( !$order_id ) {
return;
}
$order = wc_get_order( $order_id );
if ( $order->get_status() == 'processing' ) {
$payment_method = $order->get_payment_method();
if ( $payment_method != "cod" ) {
$order->update_status( 'completed' );
echo "<span>Payment received successfully.</span>";
}
}
}
试试这个代码
推荐阅读
- python - 枚举回馈字母作为值而不是单词
- json - 在 Azure 数据工厂 v2 中对 REST Web 服务使用 JSON 正文查询
- android - “bylazy”在Android-Kotlin中的应用是什么?
- excel - Range.Find 在查找失败时产生错误
- javascript - 将数组转换为没有键的对象
- hibernate - 如何使用 CriteriaQuery API 在 ComponentType 中执行 LEFT_JOIN
- python - running 2 while True 一次循环
- python - 在 python 中的列表中查找特定值并获得错误为 TypeError: list indices must be integers or slices, not str
- php - required_if 在 Laravel 中不是大小写
- c# - 尝试解析 json 时出现意外字符