有沒有辦法從獲得$product
?WooCommerce訂閱 - 獲取特定訂閱的產品
感謝this post,我知道,從$subscription
我可以得到$order
:
$order = $subscription->order;
這也可能嗎?
$product = $subscription->product;
或者:
$product = $order->product;
有沒有辦法從獲得$product
?WooCommerce訂閱 - 獲取特定訂閱的產品
感謝this post,我知道,從$subscription
我可以得到$order
:
$order = $subscription->order;
這也可能嗎?
$product = $subscription->product;
或者:
$product = $order->product;
是的,如果你有一個 「訂閱ID」,你可以得到這樣的對象:
$subscription = new WC_Subscription($the_id);
當你已經有了$認購對象:
$related_orders_ids_array = $subscription->get_related_orders();
然後循環相關訂單數組。
foreach ($related_orders_ids_array as $order_id) {
$order = new WC_Order($order_id);
$items = $order->get_items();
然後如果你通過訂單項循環,您可以訪問產品信息:
foreach ($items as $product) {
var_dump($product);
}
}
這是有可能得到的產品無論從認購或匹配順序,作爲認購對象是WC_Order
類的擴展。
$subscription_products = $subscription->get_items();
$order_products = $subscription->order->get_items();
在您提供訂閱服務大多數情況下,這兩個將等同或$order_products
應至少包含內$subscription_products
找到的所有產品。
一個值得注意的例外是手動創建訂閱;訂單將不會附加到訂閱,因此$subscription->order
可能不是有效的WC_Order
對象。