IDで顧客の住所を読み込む方法はありますか?
ユーザー名による顧客の読み込みと同様に、次のようになります。
$customer->loadByEmail($customerEmail);
新しいアドレスを作成するか、既存のアドレスを更新するかを決定できるように、アドレスがすでに存在するかどうかを知りたいので、これが必要です。
IDで顧客の住所を読み込む方法はありますか?
ユーザー名による顧客の読み込みと同様に、次のようになります。
$customer->loadByEmail($customerEmail);
新しいアドレスを作成するか、既存のアドレスを更新するかを決定できるように、アドレスがすでに存在するかどうかを知りたいので、これが必要です。
Mageで複数のアドレスを設定できるので、これを使用します...
$customer = Mage::getModel('customer/customer')
->load($customer_id); // insert customer ID
foreach ($customer->getAddresses() as $address)
{
$data = $address->toArray();
var_dump($data);
}
もちろん、var_dump
すべての配列データが表示されます。この時点で探しているアドレスを操作して引き出すのはあなた次第です。
「ID」が(顧客IDではなく)アドレスIDを参照していると仮定すると、
$id = 5;
Mage::getModel('customer/address')->load($id);
(IDでロードするときは常にセキュリティチェックを行うのが賢明です)
app / code / core / Mage / Customer / controllers / AddressController.phpのdeleteAction()を参照してください
次のことを試してください。
#customer id here
$customerId = 1;
#load customer object
$customer = Mage::getModel('customer/customer')->load($customerId); //insert cust ID
#create customer address array
$customerAddress = array();
#loop to create the array
foreach ($customer->getAddresses() as $address)
{
$customerAddress[] = $address->toArray();
}
#displaying the array
echo '<pre/>';print_r($customerAddress );exit;