2015-04-08 50 views
1

你好,我不能從woocommerce訂單的送貨地址東西,我得到錯誤:獲取發貨從訂單地址,宇商貿

致命錯誤:調用一個成員函數get_formatted_address()在一個非對象..

我使用代碼:

$order_data = new WC_Order('12'); 

print_r($order_data->get_formatted_shipping_address()); 

回答

2

刪除單引號,因爲WC_Order構造函數接受整型參數順序編號。

$order_data = new WC_Order(12); 

print_r($order_data->get_formatted_shipping_address()); 
+0

謝謝你的回覆,但我得到了同樣的錯誤... – andys

7

這裏是一個解決辦法

// 123 Happy Coding Lane, Apt #5 Delray Beach, FL 33445 

function formatted_shipping_address($order) 
{ 
    return 
     $order->shipping_address_1 . ', ' . 
     $order->shipping_address_2 . ' ' . 
     $order->shipping_city  . ', ' . 
     $order->shipping_state  . ' ' . 
     $order->shipping_postcode; 
} 

echo formatted_shipping_address($order); 

您可以直接訪問航運&計費性能。

航運

$order->shipping_first_name 
$order->shipping_last_name 
$order->shipping_company 
$order->shipping_address_1 
$order->shipping_address_2 
$order->shipping_city 
$order->shipping_state 
$order->shipping_postcode 
$order->shipping_country 

結算

$order->billing_first_name 
$order->billing_last_name 
$order->billing_company 
$order->billing_address_1 
$order->billing_address_2 
$order->billing_city 
$order->billing_state 
$order->billing_postcode 
$order->billing_country 
+0

國名是用2-3位數字代碼保存的,以得到完整的國名使用 WC() - > countries-> countries [$ order- > billing_country]或 WC() - >國家 - >國家[$ order-> shipping_country] –

0

使用此

 $order->get_shipping_address_1();  
    $order->get_shipping_address_2();
1

你可以得到所有的送貨地址字段很簡單,用此代碼爲我工作:

代碼

$order = new WC_Order($order_id); // Order id 
$shipping_address = $order->get_address('shipping'); 

print_r($shipping_address); 

默認功能get_address()返回帳單地址的細節,但你可以得到收貨地址信息傳遞參數「航運

以下是文檔:Woocommerce docs

Regards !!

相關問題