【问题标题】:Magento Email validation on Customer Import客户导入时的 Magento 电子邮件验证
【发布时间】:2025-12-03 04:30:01
【问题描述】:

我正在尝试将客户导入 Magento。问题是它显示特定国家/地区的*域名错误。例如 myemail@google.com.pk 给出错误和导入脚本说电子邮件无效。

但是,当我从前端创建一个具有相同电子邮件 ID 的用户时,就会创建该帐户。我应该怎么做才能让 Magento 停止在客户导入时出错?

【问题讨论】:

  • 您是如何尝试导入客户的?该帐户是从前端创建的,因为 .pk 显示在数组 $_validTlds 中的 lib/Zend/Validate/Hostname.php 中
  • 我正在通过 CSV 导入进行导入。但是感谢您的先机,我现在将通过查看文件来解决问题。

标签: magento


【解决方案1】:

因此,客户导入过程通过文件/app/code/core/Mage/ImportExport/Model/Import/Entity/Customer.php 进行。在这里您可以找到电子邮件支票。

if (!Zend_Validate::is($email, 'EmailAddress')) {
    $this->addRowError(self::ERROR_INVALID_EMAIL, $rowNum);
}

这与通过前端创建客户时所做的检查完全相同。我建议进行以下调试。

  1. 检查是否可以通过前端创建具有此地址的客户,
  2. 检查您是否没有为导入覆盖客户实体,

【讨论】: