ゲストチェックアウト注文から配送先住所と請求先住所を取得する


7

未登録の顧客(ゲスト)がチェックアウトした注文の場合、Magentoは顧客を作成しません。ただし、アドレス情報はに保存されsales_flat_order_addressます。このデータにどのようにアクセスしますか?このテーブルの下では、のような列があるfirstnamelastnameaddress_type私は必要なものです(ビリング/シッピング)、などが。

注文オブジェクト(sales/order)をロードしようとしましたが、関連付けられたテーブルデータはこれから利用できると考えましたが、利用できないようです。私は得ることができないので、entity_idのsのsales_flat_order_address順序に対応しsales_flat_order、どのように私はこのケースでの配送や請求先住所を取得するのでしょうか?parent_idメイン注文テーブルの行IDであるもロードできません。

sales_flat_order_payment経由->getPayment()でデータにアクセスできますが、->getAddress(es)()動作しないようです。

何か案は?

回答:


21

あなたが注文ID 10000015を持っているとしましょう:だから

$orderId = '10000015';
$order = Mage::getModel('sales/order')->loadByIncrementId($orderId);
$billingAddress = $order->getBillingAddress();
$shippingAddress = $order->getShippingAddress();

私は、今それを見るOrder.phpためのSalesモデル。ありがとう!
musicliftsme 2013年

訂正:Salesモジュールは私が意味したものです!(Mage_Sales_Model_Order
musicliftsme 2014年

@Marius上記のコードを使用していて、キャプチャされたログファイルは5MBで、すべて[customer_eav_attribute]がありますか?何が間違っていると思いますか?
バタフライ

4

注文IDで配送の詳細を取得する

$order_id = 2314; //use your own order id 

$order = Mage::getModel("sales/order")->load($order_id); //load order by order id 

$shipping_address = $order->getShippingAddress();

 echo $shipping_address->getTelephone(); 

echo $shipping_address->getPostcode(); //use print_r($shipping_address->getData()); to get all the available elements of the object
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.