Trong bối cảnh của một dự án của khách hàng chúng tôi có hệ thống Magento xây dựng lại nên, rằng nó được tối ưu phù hợp như trang cạnh tranh. Trong trường hợp này phải là trong trường hợp giá nguyên liệu nhập đúng địa chỉ vận chuyển và tải lên hình ảnh và tải lên.
Bây giờ chúng tôi đã có vấn đề, Magento rằng mỗi lần, nếu người dùng muốn tải lên không sai định dạng hoặc tải lên (Nhưng mặc dù một thông báo lỗi trên trang đến) một email được gửi từ hệ thống, việc thanh toán thất bại.
này thường là các thiết lập trong hệ thống > cấu hình > bán hàng / Thanh toán và có với “E-mail Từ một thanh toán không thành công” chịu trách nhiệm. Ở đây người ta có thể có được những ý tưởng, mà không có thư được gửi, nếu bạn rời sân với địa chỉ chỉ có sản phẩm nào – denkste! Nếu bạn nhìn vào những cái tên của các trường, thấy, rằng có một cái gì đó của bản sao. các “thanh toán thất bại”-Thư được gửi LUÔN cụ thể là lưu trữ trong địa chỉ email hệ thống liên lạc và sau đó có thể được vận chuyển đến việc bổ sung vào đây để được nộp với thư (Vì vậy, các thiết lập cuối cùng “Bcc / thư riêng”).
Nếu ngay bây giờ để NO -Và Ý tôi là NO- “thanh toán thất bại”-Thư muốn nhiều hơn, Bạn có thể thực hiện điều này bằng nhiều cách.
Người ta có thể viết một viết lại của ứng dụng / code / core / Mage / Checkout / Helper / data.php và có đặc biệt đối với
public function sendPaymentFailedEmail($kiểm tra, $thông điệp, $checkoutType = 'onepage')
Đây sẽ là tốt hơn so với chỉ một phần
public function sendPaymentFailedEmail($kiểm tra, $thông điệp, $checkoutType = 'onepage') { $dịch = Mage::getSingleton('Lõi / dịch'); /* @var $ dịch Mage_Core_Model_Translate */ $dịch->inline cuối bộ của(sai); $mailTemplate = Mage::getModel('Lõi / email_template'); /* @var $ mailTemplate Mage_Core_Model_Email_Template */ $template = Mage::getStoreConfig('Thanh toán / payment_failed / mẫu', $kiểm tra->getStoreId()); $CopyTo = $ this->_getEmails('Thanh toán / payment_failed / copy_to', $kiểm tra->getStoreId()); $copyMethod = Mage::getStoreConfig('Thanh toán / payment_failed / copy_method', $kiểm tra->getStoreId()); nếu ($CopyTo && $copyMethod == 'bcc') { $mailTemplate->addBcc($CopyTo); } $_reciever = Mage::getStoreConfig('Thanh toán / payment_failed / reciever', $kiểm tra->getStoreId()); $sendto = array( mảng( 'Email' => pháp sư::getStoreConfig('Trans_email / ident _'. $ _ Reciever. '/ Email', $kiểm tra->getStoreId()), 'Name' => pháp sư::getStoreConfig('Trans_email / ident _'. $ _ Reciever. '/ Tên', $kiểm tra->getStoreId()) ) ); nếu ($CopyTo && $copyMethod == 'bản sao') { cho mỗi ($CopyTo là $ email) { $gửi đến[] = array( 'Email' => $e-mail, 'Name' => vô giá trị ); } } $shippingMethod = ''; nếu ($shippingInfo = $ checkout->getShippingAddress()->getShippingMethod()) { $dữ liệu = explode('_', $shippingInfo); $shippingMethod = $ dữ liệu[0]; } $PAYMENTMETHOD = ''; nếu ($paymentInfo = $ checkout->getPayment()) { $PAYMENTMETHOD = $ paymentInfo->GetMethod(); } $mục = ''; cho mỗi ($kiểm tra->getAllVisibleItems() như $ _item) { /* @var $ _item Mage_Sales_Model_Quote_Item */ $các mặt hàng. = $ _item->getProduct()->getName() . 'X'. $_mục->getQty() . '' . $kiểm tra->getStoreCurrencyCode() . '' . $_mục->getProduct()->getFinalPrice($_mục->getQty()) . "\n"; } $tổng = $ checkout->getStoreCurrencyCode() . '' . $kiểm tra->getGrandTotal(); cho mỗi ($sendto như $ nhận) { $mailTemplate->setDesignConfig(mảng('Khu vực' =>'Frontend', 'Cửa hàng' =>$kiểm tra->getStoreId())) ->sendTransactional( $bản mẫu, pháp sư::getStoreConfig('Thanh toán / payment_failed / bản sắc', $kiểm tra->getStoreId()), $người nhận['e-mail'], $người nhận['Tên'], mảng( 'Lý do' => $thông điệp, 'CheckoutType' => $checkoutType, 'DateAndTime' => pháp sư::ứng dụng()->getLocale()->ngày(), 'Khách hàng' => pháp sư::người giúp việc('khách hàng')->getFullCustomerName($kiểm tra), 'CustomerEmail' => $kiểm tra->getCustomerEmail(), 'BillingAddress' => $kiểm tra->getBillingAddress(), 'ShippingAddress' => $kiểm tra->getShippingAddress(), 'ShippingMethod' => pháp sư::getStoreConfig('Hãng /' . $Phương pháp vận chuyển . '/chức vụ'), 'PAYMENTMETHOD' => pháp sư::getStoreConfig('thanh toán/' . $PAYMENTMETHOD . '/chức vụ'), 'Mục' => nl2br($hạng mục), 'Tổng' => $toàn bộ, ) ); } $dịch->inline cuối bộ của(thật); trả $ này; }
qua
public function sendPaymentFailedEmail($kiểm tra, $thông điệp, $checkoutType = 'onepage') { trả $ này; }
để thay thế.
Nhưng cũng sẽ làm việc 😉 Nó có thể là, rằng hệ thống vẫn phàn nàn trong Exception.log. Nhưng mail là không tôn trọng hơn. “thanh toán thất bại”.
Đăng trong Magento 1.9.4.0