Ahmed
Ahmed Ahmed MAHI consultant Technique web, e-commerce et mobile avec 10 ans d’expérience.

Création d’un client a l’aide du code sous Magento

Création d’un client a l’aide du code sous Magento

Voyons comment créer un client. Dans le helper par exemple j’ajoute la méthode :

public function CreateCustomer($customerInformations) {
        $customer = Mage::getModel('customer/customer');
        $customer->setWebsiteId(Mage::app()->getWebsite()->getId());
        $customer->loadByEmail($customerInformations['email']);
        if (!$customer->getId()) {
            /* $customer->setEmail($customerInformations['email']);
              $customer->setFirstname($customerInformations['firstname']);
              $customer->setLastname($customerInformations['lastname']);
              $customer->setPassword($customerInformations['password']); */
            $customer->setData($customerInformations);
        }
 
        try {
            $customer->save();
        } catch (Exception $ex) {
            Zend_Debug::dump($ex->getMessage());
        }
        return $customer;
    }

Donc une petite explication de la méthode : Premièrement j’initialise mon objet Model « $customer »

$customer = Mage::getModel('customer/customer');

Puis je lui affect une boutique dans mon cas la boutique par défaut :

$customer->setWebsiteId(Mage::app()->getWebsite()->getId());

Je vérifie si le client existe déjà dans la base (à l’aide d’adresse émail)

 $customer->loadByEmail($customerInformations['email']);
        if (!$customer->getId()) {

Pour renseigner les informations client je peux utiliser soit:

$customer->setEmail($customerInformations['email']);
$customer->setFirstname($customerInformations['firstname']);
$customer->setLastname($customerInformations['lastname']);
$customer->setPassword($customerInformations['password']);

Ou

$customerInformations = array(
            'email' => '1hmedmahi@gmail.com',
            'firstname' => 'Ahmed',
            'lastname' => 'Mahi',
            'password' => 'magento');
Mage::helper('inforbycode')->CreateCustomer($customerInformations);

On fait on pas encore terminé car on a juste crée un client avec des informations basique il ne reste ses adresses. A suivre…. :)

comments powered by Disqus