Ich habe meine Website auf 1.9.1 aktualisiert und jetzt erhalten meine Kunden keine Bestellbestätigungs-E-Mail.
Ich habe versucht, über das Admin-Panel zu senden, aber es passiert nichts. Außerdem wird keine Aktualisierungs-E-Mail empfangen.
email
upgrade
cron
magento-1.9.1.1
user16826
quelle
quelle
Antworten:
quelle
cron.sh
läuft! Wir haben gerade einen ganzen Tag damit verbracht, dieses Problem zu beheben, um festzustellen, dass cron falsch konfiguriert wurde.Es gibt 2 Methoden, um E-Mails aus unserem Magento 1-Shop zu versenden.
Wenn Sie Cron vermeiden wollen:
Öffnen Sie Ihre order.php-Datei unter
Zeile # 1356,1450,
Veränderung
zu:
In
app/design/frontend/base/default/template/checkout/success.phtml
: folgende Zeile hinzufügen Top Erfolgsseite für den direkten Mailversandquelle
Ich habe den folgenden E-Mail-Warteschlangencode aus Template.php entfernt und dann angefangen, E-Mails zu erhalten, wenn die Bestellung vom Kunden aufgegeben wurde oder wenn ich auf der Registerkarte "Verkauf / Bestellungen" im Administrationsbereich auf E-Mail senden geklickt habe.
Magento hat die Auftrags-E-Mail so eingestellt, dass sie per Zeitplan-Job anstatt per Sofort-E-Mail gesendet wird ... wahrscheinlich aus Performance-Gründen? (Ich weiß nicht warum, ich bin sehr neu in Magento) ... aber ich werde diesen Code wieder einfügen die Template.php und finde eine Möglichkeit, den Zeitplan-Job so einzustellen und auszuführen, dass er alle 5 Minuten ausgeführt wird ...
Template.php befindet sich in => /app/code/core/Mage/Core/Model/Email/Template.php
quelle
Es gibt zwei Lösungen wie folgt:
Lösung-01: Verwenden von Cron
System> Konfiguration> Erweitert> System> Cron
Die Standardeinstellungen sind:
Zunächst einmal ist Magento 1.9+ vollständig auf Cron-Jobs angewiesen, um Transaktions-E-Mails zu versenden. Wenn Sie zuvor keine ordnungsgemäßen Cron-Jobs eingerichtet haben, müssen Sie dies jetzt tun.
Stellen Sie zunächst sicher, dass Sie im Magento-Admin unter cron-Tasks eingerichtet haben
Die Standardeinstellungen sind:
Generieren Sie alle 15 Zeitpläne einen Zeitplan für 20 verpasste, wenn Sie nicht innerhalb von 15 ausgeführt werden
Es gibt Leute, die vorschlagen, diese Einstellungen zu ändern, aber da sie sich nicht auf die beste Kombination einigen können, lasse ich es lieber so, wie es ist.
Sie müssen dann in Ihr Hosting-Control-Panel gehen und Cron-Jobs einrichten. In cPanel befindet es sich unter Erweitert> Cron-Jobs. Richten Sie sie so ein, dass sie alle fünf Minuten ausgeführt werden, und verwenden Sie den folgenden Befehl:
Stellen Sie sicher, dass der oben angegebene Pfad korrekt ist und dass sich die Datei cron.php im Stammverzeichnis Ihrer Magento-Installation befindet (wenn Sie gerade ein Upgrade durchgeführt haben, sollte dies der Fall sein). Ändern Sie den Benutzernamen in das richtige Konto.
Jetzt habe ich zunächst den Fehler gemacht, den Rat der Entwickler von xtento.com zu befolgen, die sagen, dass sie eine wget-Befehlszeichenfolge verwenden sollen: wget -O / dev / null -q http://www.YOURDOMAIN.com/PATH_TO_MAGENTO/cron. php
Transaktions-E-Mails werden sofort gesendet.
quelle
Mit Magento 1.9 werden alle E-Mails in die Warteschlange gestellt und später über Cron versendet.
Magento 1.9 Release Note
Wenn Sie möchten, dass Ihre Transaktions-E-Mails über Cron gesendet werden, können Sie den Cron über System > Konfiguration > System unter der Registerkarte Cron einstellen ODER in Cpanel einen Cron erstellen, der direkt zu Ihrer cron.sh oder cron.php in Ihrem Magento-Stammverzeichnis führt.
quelle
Installieren Sie einfach die Erweiterung "SMTP Pro Email": http://www.magentocommerce.com/magento-connect/smtp-pro-email-free-custom-smtp-email.html
Füllen Sie Ihre benutzerdefinierten SMTP-Details aus und fertig.
Ich habe zwei volle Tage gebraucht, um das herauszufinden. Es werden keine Cron-Jobs benötigt. Wenn Sie jedoch möchten, dass Cron-Jobs funktionieren, und dies nicht möchten, können Sie Folgendes tun:
Bearbeiten Sie cron.php im Magento-Stammverzeichnis
Nach:
Fügen Sie diese Codezeile hinzu:
Richten Sie Cron Job ein
Öffnen Sie in C Panel den Abschnitt Cron-Jobs.
Erstellen Sie einen Cron-Job, der alle 15 Minuten den folgenden Befehl ausführt:
quelle
In Magento 1.9.1.0 hat Magento eine neue Funktion hinzugefügt: Sie speichern die Bestell-E-Mail in der
core_email_queue
Tabelle, um die Bestell-E-Mail zu senden. Wir müssen dencron.php
In-Server einstellenDie
cron.php
Datei legt diecore_email_queue_send_all
In-Cron-Zeitplantabelle fest. Führen Sie bei crone die Methode "send" aus, die von aufgerufen wirdMage_Core_Model_Email_Queue
. Sie senden die Mail an den Kunden.Das obige Update funktioniert also ohne Änderung der Core-Datei.
quelle
Führen Sie einfach das Cron-Setup auf Ihrem Server wie folgt aus: Befehl & dann erhalten Sie Sales-Mails.
Übliche Einstellungen als "*****" verwenden
Sie müssen YOUR_USER_NAME & Path_to_cron.php durch Ihre ersetzen.
quelle
Unter Verwendung von n98-magerun führe ich einfach Folgendes aus:
n98-magerun sys:cron:run core_email_queue_send_all
Oder um es zeitlich festzulegen, wenn Sie es nicht ständig ausführen möchten:
watch -n 10 n98-magerun sys:cron:run core_email_queue_send_all
Dadurch werden alle 10 Sekunden alle in der Warteschlange befindlichen E-Mails gesendet.
quelle
Verwenden Sie für den Godaddy-Server folgenden Code, während Sie den Cronjob einrichten:
Dies wird jede Minute ausgeführt.
quelle
Wenn NUR die Bestell-E-Mail nicht gesendet wird, werden in Magento nur die Bestell-E-Mails in die Warteschlange gestellt und gespeichert, um sie stapelweise zu versenden. Wenn Sie Ihr Heartbeat Cron-Setup nicht haben, verlassen sie niemals die Magento-Warteschlange.
Sie sehen, dass andere Magento-E-Mails ausgehen, da diese direkt von Magento an Ihren Mailer-Daemon übergeben werden. Die Magento-Warteschlangen (wie die Bestell-E-Mail) werden erst dann an den Mailer-Daemon übergeben, wenn der Hearbeat Cron ausgeführt wird.
Wechseln Sie zu http://yourmagentodomain.com/cron.php, und aktualisieren Sie diese Seite alle fünf Minuten. Die in der Warteschlange befindlichen Bestell-E-Mails erlöschen. Der Heartbeat Cron soll das für Sie tun. Oh, und wenn Sie zu dieser cron.php-Datei navigieren, sollte die Seite leer sein, seien Sie also nicht beunruhigt ... es wird funktionieren.
quelle
Ich hatte das gleiche Problem und stellte fest, dass es sich um eine Erweiterung handelte. Fooman Email Attachments wurde jetzt auf v0.10.4 aktualisiert. Versionen unter v0.10.3 funktionieren nicht mit Magento 1.9.
quelle
Ich verfolgte die Wissensdatenbank, um sie zum Laufen zu bringen: http://www.magentocommerce.com/knowledge-base/entry/ee1141-ce191-responsive-email#contact-info
Im Abschnitt "Lokalisieren von Transaktions-E-Mails" wurden nach Befolgen der vorherigen Anweisungen beim Kopieren nach / de_DE die E-Mails endgültig auf den Weg gebracht (einschließlich der zuvor nicht gesendeten). Außerdem trat ein Problem auf, bei dem die Bestellbestätigungsseite nicht für Kunden angezeigt wurde Fertigstellung. Dies wurde auch behoben.
Für das Gebietsschema en_GB müssten Sie beispielsweise die Dateien kopieren, die sich unter folgender Adresse befinden:
app / locale / de_DE / template / email
zum Ort:
app / locale / de_DE / template / email
quelle
Wenn Ihr Mailsystem (smtp, zend_mail) einwandfrei funktioniert; Das Deaktivieren von mailQueue kann Ihr Problem lösen.
/app/code/core/Mage/Core/Model/Email/Template.php
Ändern Sie die Zeile 407
zu
quelle
Wenn Sie die Erweiterung SMTPpro haben, versuchen Sie, diese zu deaktivieren. Und nochmal nachschauen. Alle E-Mails funktionieren einwandfrei und Sie müssen nur richtig konfigurieren.
quelle
Besser ist es, eine Kopie Ihrer App / code / core / Mage / Core / Model / Email / Template / Mailer.php zu erstellen
In deinen lokalen Ordner app / code / local / Mage / Core / Model / Email / Template / Mailer.php
Kommentieren Sie dann diese Zeile in Zeile 76 aus
Dann bist du fertig. Die Vorlage success.phtml muss nicht geändert werden. : D
quelle