首页 > 解决方案 > Woocommerce 订阅:自动创建续订订单并暂停有效订阅

问题描述

我的客户使用 WC 订阅和会员资格。他为客户提供 1 美元的试用会员资格,以试用他的服务 30 天。30 天后,如果客户未选择退出订阅,则将向他们收取全额费用。

这是 PayPal Standard 上发生的情况:

问题是我刚刚在我的 PayPal 沙箱中测试了这个场景,并且一切都正常运行。未生成自动续订订单。谁能帮我理解为什么这个续订订单会自动生成?

谢谢。

标签: phppaypalwoocommercepaypal-subscriptionswoocommerce-subscriptions

解决方案


我遇到了同样的问题。但是,问题是,当订阅自动续订时,那个时候它的MEMBERSHIP状态变为 PAUSED。我开发并应用了以下解决方案,它奏效了!!

/*
 * FIXED : Membership got PAUSED everytime at automatic membership renewal
 */

function change_membership_status_active( $subscription , $order ) {
    global $wpdb;
    if( 'completed' === $order->get_status() ) {        
        $membership = $wpdb->get_row( "SELECT * FROM wp_postmeta WHERE meta_key = '_subscription_id' AND meta_value =  $subscription->ID" );
        $mem_id = $membership->post_id;
        $status = 'wcm-active';
        $update_args = array( 'ID' => $mem_id, 'post_status' => $status );
        wp_update_post($update_args);
    }
}
add_action( 'woocommerce_subscription_renewal_payment_complete', 'change_membership_status_active', 10, 2 );

推荐阅读