猿问

如何从 WC_Subscription 实例对象获取订单详细信息

这用于完成初始订阅付款和订阅续订。


function payment_made($subscription){

    // How do I get the order details?

}

add_action("woocommerce_subscription_payment_complete", "payment_made");

这适用于状态更改时,因此我可以处理手动和系统更改,无论是手动覆盖还是失败/待处理/活动/基于付款或切换的任何状态。


function status_update($subscription, $old_status, $new_status){

    // How do I get the order details?

}

add_action("woocommerce_subscription_status_updated", "status_updated");


慕尼黑的夜晚无繁华
浏览 136回答 2
2回答

森栏

要从对象获取订单详细信息WC_Subscription,您首先需要使用以下方法获取父 ID(即订单 ID)get_parent_id():$order_id = $subscription->get_parent_id();然后,您将使用以下命令从订单 ID 获取 WC_Order 对象:$order = wc_get_order( $order_id );

LEATH

可以使用以下方法直接从 WC_ 订阅对象获取一些详细信息 $subscription->get_id() //subscription id $subscription->get_parent_id() //order id $subscription->get_currency() $subscription->get_customer_note() $subscription->get_prices_include_tax() $subscription->get_payment_method() $subscription->get_payment_method_title() $subscription->get_billing_first_name() $subscription->get_billing_last_name() $subscription->get_billing_company() $subscription->get_billing_address_1() $subscription->get_billing_address_2() $subscription->get_billing_city() $subscription->get_billing_state() $subscription->get_billing_postcode() $subscription->get_billing_country() $subscription->get_billing_email() $subscription->get_billing_phone() $subscription->get_shipping_first_name() $subscription->get_shipping_last_name() $subscription->get_shipping_company() $subscription->get_shipping_address_1() $subscription->get_shipping_address_2() $subscription->get_shipping_city() $subscription->get_shipping_state() $subscription->get_shipping_postcode() $subscription->get_shipping_country() $subscription->get_order_key() $subscription->get_date_created() $subscription->get_date_modified()
随时随地看视频慕课网APP
我要回答