2

チェックアウトの住所ステップで顧客が選択した住所を取得しようとしています。

/app/code/local/Mandarin/AddressTypeDiscount/Block/Onepage/Review.php で次のコードを使用します。

$checkout = Mage::getSingleton('checkout/session')->getQuote();
$bilAddress = $checkout->getBillingAddress();
$mylog = print_r($bilAddress, true);
Mage::log("addres:".$mylog, null, 'mygento.log');

しかし、私のログ ファイルには、すべての顧客の住所の配列が含まれています。

アドレスステップで選択したアドレスを取得するにはどうすればよいですか? ありがとう。

4

2 に答える 2

10

あなたのコードは正しいようですMagentoの1ページチェックアウトの注文レビューセクションで請求情報を取得する を参照してください。

print_r($bilAddress, true)オブジェクト全体を印刷しますが、代わりに試してください$bilAddress->getData()

試す

 $checkout = Mage::getSingleton('checkout/session')->getQuote();
 $billAddress = $checkout->getBillingAddress();

 Mage::log($billAddress->getData());
于 2013-06-05T13:36:51.623 に答える
2

注文に基づく増分注文アドレス ID の場合、

$order_id=Mage::getSingleton('checkout/session')->getLastRealOrderId();
$sales_order=Mage::getModel('sales/order')->load($order_id);
$billing_address_id=$sales_order->billing_address_id; 
$shipping_address_id=$sales_order->shipping_address_id;

顧客に基づく注文の住所エンティティ ID の場合、

$quote = Mage::getSingleton('checkout/session')->getQuote();
$billing_address_id=$quote->getBillingAddress()->customer_address_id;
$shipping_address_id=$quote->getShippingAddress()->customer_address_id;

ソース

于 2013-06-05T13:36:43.367 に答える