有没有办法通过 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;