状況:ゲストとしてチェックアウトします(データベースに顧客の請求先住所がありません)。
問題:URLまたはセッションの変数を使用して請求先住所フォームに自動的に入力するにはどうすればよいですか?
私にとっての完璧な解決策は次のとおりです。
たとえば、このファイルでは、変更をできるだけ少なくします。
app / design / frontend / default / my_theme_name / template / persistent / checkout / onepage / billing.phtml
この方法で変数にアクセスします
$ this-> getAddress()-> getName();
私の一時的な解決策:
/* array comes from url or session */
$myAddress = array (
'firstname' => 'John',
'lastname' => 'Smith',
'street' => array (
'0' => '1st Street',
'1' => '2056',
),
'city' => 'Maspeth',
'region_id' => '',
'region' => '',
'postcode' => 'NY11378',
'country_id' => 'US',
'telephone' => '0017183209872'
);
$customAddress = Mage::getModel('customer/address');
$customAddress->setData($myAddress);
/* $this = Mage_Checkout_Block_Onepage_Billing */
$this
->setBillingAddress(Mage::getSingleton('sales/quote_address')
->importCustomerAddress($customAddress));
/* insert value into input field */
echo $this->getBillingAddress()->getName();