【问题标题】:magento changing customer group of guest usermagento 更改来宾用户的客户组
【发布时间】:2012-03-26 21:03:29
【问题描述】:

我的单页结帐中有一个自定义字段,用于Model\Observer.php 以使用以下内容设置客户组:

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

这一切都很好,我这样做是为了更改购物车中的税。

但是,对于以访客身份结账的人,它会引发错误:

customer email is required

有没有办法为客人设置一个客户组,例如第二个未登录组?

【问题讨论】:

    标签: magento checkout


    【解决方案1】:

    检查用户会话,然后设置客户电子邮件地址。

      $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();
      }  
    

    【讨论】:

    • 我最终通过编辑 Quote.php 和 Order.php 文件以不同且更复杂的方式执行此操作。你的看起来好多了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-09
    • 2023-03-05
    • 2023-03-21
    • 2012-03-25
    • 2014-05-27
    • 1970-01-01
    相关资源
    最近更新 更多