magento смена группы клиентов гостевого пользователя - PullRequest
2 голосов
/ 09 марта 2012

В моей одностраничной кассе есть настраиваемое поле, которое используется в Model\Observer.php для установки группы клиентов с помощью следующего:

$customer = Mage::getSingleton("customer/session")->getCustomer();
$customer->setGroupId($newGroupId)->save();

Все это прекрасно работает, и я делаю этоизменить налог в корзине.

Однако для людей, регистрирующихся как гость, выдается ошибка:

customer email is required

Есть ли способ настроить группу клиентов для гостя,например, вторая группа, не вошедшая в систему?

1 Ответ

5 голосов
/ 09 марта 2012

проверьте сеанс пользователя, затем установите адрес электронной почты клиента.

  $session = Mage::getSingleton('customer/session');  
  $customer = $session->getCustomer();  
  if($session->isLoggedIn()) {  
     $customer->setGroupId($newGroupId)->save();  
  } else {  
     $customer->setEmail($customer->getData('email')); 
     $customer->setGroupId('2'); // I am assuming 'guest' groupd id is 2
     $customer->save();
  }  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...