配送先住所IDで配送先住所を取得する方法は?


9

注文オブジェクトがあります。それから、配送先住所IDを取得できます。誰もが配送先住所IDによって配送先住所を導き出す方法を提案できますか?

回答:


15

order_addressオブジェクトを使用して、配送先住所を取得できます。

 $address = Mage::getModel('sales/order_address')->load($shippingId);
// $shippingId is the id you get from order object.
$custName = $address->getName();
$custAddr = $address->getStreetFull();
$region = $address->getRegion();
$country = $address->getCountry();

または使用

print_r(get_class_methods($address)); 

アドレスオブジェクト($ address)で使用できるメソッドを確認します。

それがあなたの問題を解決することを願っています:)


7

あなたが簡単にできる注文オブジェクトからアドレスを取得するには $order->getShippingAddress()

想定

$order_id = 123; // put your order id here
$order = Mage::getModel('sales/order')->load($order_id);

その後

$address = $order->getShippingAddress();
$custName = $address->getName();
$custAddr = $address->getStreetFull();
$region = $address->getRegion();
$country = $address->getCountry();

私はすでに数か月前に私の質問を解決しました。返事はありがたいけど。+1
スケシニ2013

$address使用すると空です$address = $order->getShippingAddress()が、使用する$address = Mage::getModel('sales/order_address')->load($shippingId);とアドレスが返されます
Pradeep Singh

2

Shathishはあなたに素晴らしく正しい答えを与えました。

ただし、シングルトンメソッドとクエリを使用できます。

$shimnetId = "1"; // use your shipment id: 

$read = Mage::getSingleton('core/resource')->getConnection('core_read');

$query = "SELECT * FROM sales_flat_order_address WHERE entity_id='".$shipmentId."'";

$results = $read->fetchAll($query);

var_dump($results);

sales_flat_order_address 請求先と配送先住所の両方が含まれています。

それがあなたのために働くことを願っています。


2
私はあなたの解決策をテストしませんでした。しかし、ソースで直接SQLクエリを使用するよりも、Magentoが開発した方法に従って開発する方が良いと思います。とにかくあなたの提案に感謝します。ありがとう
すけしに2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.