Magento 1.9 – Envoyer commandes mails immédiatement plutôt que cron

Ab Magento Version 1.9 les e-mails de confirmation de commande sont envoyés non pas par l'événement (Ainsi, après un ordre succès) mais via une file d'attente de courrier, qui est déclenché par le cron. Dans de nombreux cas, la confirmation de commande est donc que tous les 15 minutes envoyées.

pas vraiment optimale est juste avec la confirmation de commande, parce que les clients attendent ce après la commande, pour être sûr, qui a vraiment tous travaillé. Pour les factures électroniques ou confirmations d'envoi, il serait toutefois probablement pas si mal, si elles ont été envoyées quelques minutes plus tard. Mais ils restent envoyés par l'événement – si directement.

Qui maintenant mais je, que la confirmation de la commande sera envoyée directement à l'ordre, peut moderniser cette relativement simple.

Hierzu kopiert homme mourir Datei app / code / core / Mage / Vente / Modèle / order.php in den Ordner app / code / local / Mage / Vente / Modèle / order.php

und sucht dort nach der Zeile

$courrier->setQueue($emailQueue)->envoyer();

Ce commentaire est ajouté ou supprimé et remplacé par cette ligne

$courrier-> envoyer();

Ensuite, l'application / design / frontend /[IhrTemplate]/[IhrTemplate]/modèle / caisse / success.phtml ouvert et en haut encore il ya fermer la ?> le code suivant intégré:

//Confirmation de commande sans cron
$ order = Mage::getModel(«Vente / ordre»);
$incrementId = Mage::getSingleton('Checkout / session')->getLastRealOrderId();
$Pour->loadByIncrementId($incrementId);

essayer{ $Pour->sendNewOrderEmail();}
capture (Exception $ ex) { écho "E-mail non envoyé ..."; }
$client = Mage::getSingleton('Client / session ")->getCustomer();
$email = $ client->getEmail();

Ensuite, peut-être à nouveau vider le cache. Mais les e-mails viennent directement après la commande.

Mise à jour de 17.02.2017

il a frappé, que les e-mails à plusieurs reprises de confirmation de commande ont été envoyés deux fois. Pour résoudre ce problème, le changement a été fait de success.phtml inversée (N.A.). Donc, si le problème de l'envoi de courrier électronique double émergent, puis retirez cet ajustement en arrière et changer seulement le order.php.

Mise à jour de 25.07.2017

Si l'o.g. Way ne fonctionnent pas, d'une manière différente peut être tracée:

app Man kopiert / code / core / Mage / Core / Modèle / Courriel / template.php nach

app / code / local / Mage / Core / Modèle / Courriel / template.php

et à partir de là, la ligne (comme. 407-426)

        si ($ce->hasQueue() && $ce->getQueue() instance de Mage_Core_Model_Email_Queue) {
            /** @var $ emailQueue Mage_Core_Model_Email_Queue */
            $emailQueue = $ this->getQueue();
            $emailQueue->clearRecipients();
            $emailQueue->setMessageBody($texte);
            $emailQueue->setMessageParameters(gamme(
                    'sujet' => $sujet,
                    'return_path_email' => $returnPathEmail,
                    'is_plain' => $ce->isPlain(),
                    'from_email' => $ce->getSenderEmail(),
                    'from_name' => $ce->getSenderName(),
                    'reply_to' => $ce->getMail()->getReplyTo(),
                    'return_to' => $ce->getMail()->getReturnPath(),
                ))
                ->ajouter des destinataires($e-mails, $des noms, Mage_Core_Model_Email_Queue::EMAIL_TYPE_TO)
                ->ajouter des destinataires($ce->_bccEmails, gamme(), Mage_Core_Model_Email_Queue::EMAIL_TYPE_BCC);
            $emailQueue->addMessageToQueue();

            return true;
        }

sans remplacement. Ensuite, la confirmation de la commande a été envoyée immédiatement.

Mise à jour de 19.01.2018

Toujours dans le cadre de partie mails entrants plus, S'il vous plaît jeter un oeil à CE jeter après – en utilisant le Pro SMTP Extension peut voir la file d'attente de courrier de Magento 1.9 gérer confortablement et sans modification de code.

Utilisé dans la version Magento 1.9 Remarques? Ajouts? Remarques? Volontiers!

Publié par Covos

Depuis 2009 Je travaille intensément avec Magento. J'ai commencé avec la création et l'exploitation des magasins B2C. Cela a été prolongé par mon travail dans le secteur de la logistique. Il en est résulté premiers systèmes de B2E spécialisés. Aujourd'hui, je travaille jour par jour avec B2C passionnant, B2B- et les projets B2E et rapports dans ce blog sur les défis et donner des conseils d'initiés.

13 pensées sur “Magento 1.9 – Envoyer commandes mails immédiatement plutôt que cron”

    1. le même problème ici. pas constamment, mais seulement de façon sporadique / occasionnellement.
      tout à fait pour les souris-traite……

  1. Salut à mon installation de Magento 1.9.3.6 il y a la 2. pas de chemin. Le chemin existe: app / code / core / Mage / Ventes / Modèle / order.php
    la non-: app / code / local / Mage / Vente / Modèle / order.php

    avec moi dans ce:
    app / code / local / SmartWave
    et
    app / code / local / Magegiant

    J'ai maintenant le dossier de vente voir ailleurs?

    Merci pour la réponse. Marcel lg

    1. Salut!
      Cela peut avoir des raisons différentes. L'un d'eux est que ne permet pas la réception de votre courrier hoster mails de la “faux” smtp-serveur qui Magento utilise dans la norme. Ainsi, vous aurez besoin d'utiliser un vrai serveur smtp. S'il vous plaît se référer à mon article sur l'extension SMTP-pro dans ce blog. Avec cela, vous pouvez vous connecter tous les mails et voir si les mails d'administration sont réellement envoyés ou non. Cela vous amènera à trouver encore le problème.
      Cordialement!

      1. Merci pour votre réponse,
        Installer l'extension, mais toujours le même problème pour admin,
        En effet, le client reçoit sa confirmation, et l'e-mail de contact est envoyé trop
        Pouvez-vous m'aider s'il vous plaît
        Je vous remercie

  2. Salut Covos,

    Ceci est un problème après avoir fait ce paramètre Magento peut envoyer des messages électroniques de commande deux fois deux courriels envoyés à la boîte aux lettres des clients, comment est fixé …?

Laisser un commentaire

Votre adresse email ne sera pas publié. les champs requis sont indiqués *