WooCommerce订阅提供在结账时手动续订的选项

时间:2019-02-07 作者:AppleTattooGuy

我正在试图找出如何在结帐页面上提供手动续订(默认情况下自动续订)订阅的选项。理想情况下,我希望这是签出页面上的复选框,默认情况下会勾选“自动续订”。

我似乎找不到任何关于这样做的信息,因此任何输入都将不胜感激。

1 个回复
最合适的回答,由SO网友:Mammaltron 整理而成

最近做过类似的事情:

步骤1:将您的复选框添加为自定义签出字段(此处未介绍,您可以轻松找到有关如何执行此操作的指南)。

步骤2:当用户在结账时提交订单时,在提交的结账数据中查找手动续订值,并在WooCommerce订单上将其设置为meta。

add_action(\'woocommerce_checkout_update_order_meta\',function( $order_id) {    
    if(!empty($_POST[\'custom_manual_renewal\'])){
        update_post_meta($order_id,\'custom_manual_renewal\',1);
    }
});
步骤3:当您的订阅在订单后不久创建时,请查找您的元,并可能将订阅设置为手动。

add_action(\'woocommerce_checkout_subscription_created\', function($subscription, $order){
    if(get_post_meta($order->get_id(),\'custom_manual_renewal\',true)){
        $subscription->update_manual(true); //set subscription to be manual renewal
    }
},10,2);

相关推荐