Endereço de email inválido "admin@eternal.florist"


13

Olá, comprei este novo nome de domínio sofisticado e agora estou com problemas. Eu estava tentando definir isso nos endereços de e-mail da loja no Magento admin. E obteve o erro acima. O que eu faço?

(Também tentei alterá-lo no banco de dados. Mas não consigo encontrar a tabela segurando)

Respostas:


4

Execute a seguinte instrução:

SELECT * 
FROM  `core_config_data` 
WHERE  `path` LIKE  '%email%'
LIMIT 0 , 30

Você pode editar basicamente os valores lá. Os principais que você deseja examinar são:

  • trans_email/ident_general/email,
  • trans_email/ident_salse/emaile
  • trans_email/ident_support/email

PS

Não recebi um erro ao validar esse endereço de email na 1.7.0.2, você pode tentar uma substituição local do seguinte modelo:

app/code/core/Mage/Adminhtml/Model/System/Config/backend/Email/Address.php a partir de:

protected function _beforeSave()
{
    $value = $this->getValue();
    if (!Zend_Validate::is($value, 'EmailAddress')) {
        Mage::throwException(Mage::helper('adminhtml')->__('Invalid email address "%s".', $value));
    }
    return $this;
}

para

protected function _beforeSave()
{
    $value = $this->getValue();
    /*if (!Zend_Validate::is($value, 'EmailAddress')) {
        Mage::throwException(Mage::helper('adminhtml')->__('Invalid email address "%s".', $value));
    }*/
    return $this;
}

Isso basicamente ignora o processo de validação.


21

Você não especificou qual versão do Magento você está usando, mas eu suponho que seja <CE 1.9.1.0 ou <EE 1.14.1.0. Nesse caso, a solução é atualizar o Magento para o CE 1.9.1.0 .

O Magento usa o Zend Framework (ou mais específico: a classe Zend_Validate_Hostname) para validar o domínio de nível superior.

No CE 1.9.0.0 e na versão EE correspondente, o Magento usou o Zend Framework 1.12.3. Esta versão não suporta os novos domínios de nível superior. Por esse motivo, as validações no front-end e no back-end falham.

No CE 1.9.1.0 e EE 1.14.1.0, o Magento atualizou o Zend Framework para 1.12.7. Esta versão implementa vários novos domínios de nível superior, sendo um deles .florist.

Dito isto, também existem outros domínios de nível superior atualmente não suportados na versão atual do Magento . No Zend Framework 1.12.10, que ainda não está incluído, houve outra atualização da validação do nome do host, adicionando muitos novos endereços.

Você poderia:

  • copiar lib/Zend/Validate/Hostname.phpparaapp/code/local/Zend/Validate/Hostname.php
  • obtenha o arquivo Zend_Validate_Hostname a partir de 24/10/2014 ( demora muito para copiar o arquivo, acesse o GitHub),
  • copie a $_validTldsvariável da versão hospedada no GitHub para o seu Hostname.php e
  • substituir

    // First check TLD
    $matches = array();
    if (preg_match('/([^.]{2,10})$/i', end($domainParts), $matches) ||

    com

    // First check TLD
    $matches = array();
    if (preg_match('/([^.]{2,63})$/i', end($domainParts), $matches) ||

Isso permitirá novos domínios de nível superior, incluindo aqueles com mais de 10 caracteres.


como isso é resolvido por uma atualização, eu alteraria diretamente o arquivo em vez de copiar a classe em um conjunto de códigos (faz com que apenas esqueça isso e tenha problemas após a atualização) #
Flyingmana

Você tem uma confirmação de que haverá uma atualização para 1.12.10? Se sim, eu concordo.
Matthias Zeis

Ainda em 1.9.2.4 isso não foi atualizado ..
Erfan
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.