我有做這樣的功能:從這個如何從WooCommerce的訂單中獲取客戶詳細信息?
$order = new WC_Order($order_id);
$customer = new WC_Customer($order_id);
我怎樣才能得到客戶的詳細資料? 我在文檔都試過了,但不知何故,只是一些細節是存在的,但其餘的arent,例如
$data['Address'] = $customer->get_address() . ' ' . $customer->get_address_2();
$data['ZipCode'] = $customer->get_postcode();
是空的。
否則
var_dump($customer)
產地:
對象(WC_Customer)#654(2){[ 「_data」:保護] =>陣列(14){[ 「國」] = > string(2)「IT」> [「state」] => string(0)「」[「postcode」] => string(0)「」[「city」] => string(0)「」[「地址「] =>字符串(0)」「[」address_2「] =>字符串(0)」「[」shipping_country「] =>字符串(2)」IT「 [」shipping_state「] => string(2 )「BG」[「shipping_postcode」] =>字符串(0)「」[「shipping_city」] =>>字符串(0)「」[「shipping_address」] =>字符串(0)「」[「shipping_address_2」] = > st ring(0)「」 [「is_vat_exempt」] => bool(false)[「calculated_shipping」] => bool(false)}? [ 「_changed」: 「WC_Customer」:私人] =>布爾(假)}
正如你所看到的,城市是存在的,但其餘的都是空的。我檢查了WP_usermeta和客戶的管理面板中的所有數據。
有什麼想法?
實際上,這是我遵循的方法來解決這個問題,因此我將此解決方案標記爲已接受 –
如果訂單中購買產品的人是該網站上的訪客,該怎麼辦?如何獲取該信息?將不會有user_id –
是的,我不確定這一點。也許你可以從他們的電子郵件地址或(如果你幸運的話)從會話中檢索它。不可能,但可能值得提出作爲一個新問題。 :-) –