从订购,woo commerce获取送货地址

and*_*dys 2 woocommerce

您好我无法从woocommerce订单送货地址获取,我收到错误:

致命错误:在非对象中调用成员函数get_formatted_address().

我正在使用代码:

$order_data = new WC_Order('12');

print_r($order_data->get_formatted_shipping_address());
Run Code Online (Sandbox Code Playgroud)

Bri*_*ham 12

这是一个解决方法

// 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);
Run Code Online (Sandbox Code Playgroud)

您可以直接访问送货和结算属性.

运输

$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
Run Code Online (Sandbox Code Playgroud)

开票

$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
Run Code Online (Sandbox Code Playgroud)


Rad*_*dez 5

您可以非常简单地获取所有送货地址字段,使用以下代码对我有用:

代码

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

print_r($shipping_address);
Run Code Online (Sandbox Code Playgroud)

该函数get_address()默认返回帐单地址详细信息,但您可以通过参数“送货”获取送货地址详细信息

以下是文档:Woocommerce 文档

问候!!


Wis*_*abs 4

删除单引号,因为 WC_Order 构造函数接受整数参数订单 id。

 $order_data = new WC_Order(12);

 print_r($order_data->get_formatted_shipping_address());
Run Code Online (Sandbox Code Playgroud)