DISEÑO WEB BARCELONA

Cómo enviar el email de confirmación de pedido en Magento

Captura de pantalla 2017-01-31 a las 12.26.31

Este problema empezó a aparecer a partir de la versión 1.9.1 de Magento.

Hay 2 métodos para enviar estos correos:

1) A través de cron:

crontab -u apache-user-name -e

* * * * * /bin/sh /[your Magento install dir]/cron.sh

Por ejemplo, para CentOS:

* * * * * /bin/sh /var/www/html/magento/cron.sh

2) Evitar cron, si no puedes dispones de tareas programadas crontab en tu servidor, te ayudará hacerlo de esta forma:

Copiar el fichero:
app/code/core/Mage/Sales/Model/Order.php

Pegar el fichero en:
app/code/local/Mage/Sales/Model/Order.php

En las líneas número 1356 y 1450, sustituye:
$mailer->setQueue($emailQueue)->send();

por:
$mailer->send();

También edita este otro fichero:
app/design/frontend/base/default/template/checkout/success.phtml

Añade las siguientes líneas en la parte superior de la página para enviar el email directamente:

//EW INICIO ENVIAR EMAIL PEDIDO
$order = Mage::getModel(‘sales/order’);
$incrementId = Mage::getSingleton(‘checkout/session’)->getLastRealOrderId();
$order->loadByIncrementId($incrementId);

try{ $order->sendNewOrderEmail();}
catch (Exception $ex) { echo «Email No Enviado…»; }
$customer = Mage::getSingleton(‘customer/session’)->getCustomer();
$email = $customer->getEmail();
//EW FIN ENVIAR EMAIL PEDIDO

Responder