2017-02-02 6 views
1

基本的に、私はプログラムで顧客をインポートしたいと思っています。ここに私のコードです。Magentoで個々の配送先アドレスをプログラムで追加するにはどうすればよいですか?

<?php 
    error_reporting(E_ALL | E_STRICT); 
    ini_set('display_errors', 1); 
    require 'app/Mage.php'; 
    require_once 'Zend/Crypt/Hmac.php'; 
    Mage::app('default'); 

    $websiteId = Mage::app()->getWebsite()->getId(); 
    $store = Mage::app()->getStore(); 

    $customer = Mage::getModel("customer/customer"); 
    $customer->setWebsiteId($websiteId); 
    $customer->setStore($store); 
    $customer->setFirstname('fst'); 
    $customer->setLastname('lst'); 
    $customer->setEmail('[email protected]'); 
    $customer->setPassword('somepassword'); 

    $customer->save(); 
    echo $customer->getId(); 

    $address = Mage::getModel("customer/address"); 
    $address->setCustomerId($customer->getId()); 
    $address->setFirstname($customer->getFirstname()); 
    $address->setLastname($customer->getLastname()); 
    $address->setCountryId('US'); 
    $address->setPostcode('31000'); 
    $address->setCity('Osijek'); 
    $address->setTelephone('0038511223344'); 
    $address->setFax('0038511223355'); 
    $address->setCompany('Inchoo'); 
    $address->setStreet('Kersov'); 
    $address->setIsDefaultBilling('1'); 
    $address->setIsDefaultShipping(false); 
    $address->setSaveInAddressBook('1'); 

    $address->save(); 

ただし、請求先住所のみが作成されます。もう1つアドレスを追加して出荷に設定したいと思っています。

答えて

1

ほとんど完了しました。顧客/住所のモデルを再度読み込んで再度保存しますが、今回は$address->setIsDefaultBilling(false);$address->setIsDefaultShipping('1');に設定されています。

は、Magentoの1.9に

<?php 
    require_once 'app/Mage.php'; 
    Mage::app(); 

     $websiteId = Mage::app()->getWebsite()->getId(); 
     $store = Mage::app()->getStore(); 

     $customer = Mage::getModel("customer/customer"); 
     $customer->setWebsiteId($websiteId); 
     $customer->setStore($store); 
     $customer->setFirstname('fst'); 
     $customer->setLastname('lst'); 
     $customer->setEmail('[email protected]'); 
     $customer->setPassword('somepassword'); 

     $customer->save(); 
     echo $customer->getId(); 

     $address = Mage::getModel("customer/address"); 
     $address->setCustomerId($customer->getId()); 
     $address->setFirstname($customer->getFirstname()); 
     $address->setLastname($customer->getLastname()); 
     $address->setCountryId('US'); 
     $address->setPostcode('31000'); 
     $address->setCity('Osijek'); 
     $address->setTelephone('0038511223344'); 
     $address->setFax('0038511223355'); 
     $address->setCompany('Inchoo'); 
     $address->setStreet('Kersov'); 
     $address->setIsDefaultBilling('1'); 
     $address->setIsDefaultShipping(false); 
     $address->setSaveInAddressBook('1'); 

     $address->save(); 

     $address = Mage::getModel("customer/address"); 
     $address->setCustomerId($customer->getId()); 
     $address->setFirstname($customer->getFirstname()); 
     $address->setLastname($customer->getLastname()); 
     $address->setCountryId('US'); 
     $address->setPostcode('31000'); 
     $address->setCity('Osijek'); 
     $address->setTelephone('0038511223344'); 
     $address->setFax('0038511223355'); 
     $address->setCompany('Inchoo'); 
     $address->setStreet('Kersov'); 
     $address->setIsDefaultBilling(false); 
     $address->setIsDefaultShipping('1'); 
     $address->setSaveInAddressBook('1'); 

     $address->save(); 

     die("check it!"); 
+0

感謝をテストしました。完璧に動作します –

関連する問題