Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[Решено] Отключить почту при редактировании заказа


Recommended Posts

Здравствуйте. При редактировании заказа происходит повторная отправка email клиенту с оформленным заказом. Иногда приходится редактировать заказ много раз и не хочется каждый раз спамить клиента письмами. Если кто знает, подскажите, как можно отключить отправку email только при редактировании заказа? При изменении статуса заказа или при первичном оформлении должны при этом отправляться

Link to comment
Share on other sites


Link to comment
Share on other sites


Хотите экспериментов?

 

Их есть у меня

 

catalog\model\checkout\order.php

 

строка 789 (может у кого рядои)

$mail->send();

 

if (!isset($this->session->data['token']))   $mail->send();

я думаю при таком запросе письмо и при новом заказе отправляться не будет... не так ли?!

Link to comment
Share on other sites


После этого:

$mail->send();

Добавил это:

if (!isset($this->session->data['token']))   $mail->send();

Отредактировал заказ, но письмо приходит и клиенту и админу. Тестировал на чистом ocStore-2.1.0.2.1

Link to comment
Share on other sites


Заменил $mail->send(); на if (!isset($this->session->data['token'])) $mail->send();

Отредактировал заказ (поменял кол-во товара). Письма пришли и клиенту и админу...

Link to comment
Share on other sites


chukcha, спасибо Вам за помощь (+1 к Карме). Такой Вариант работает.

Сделал следующий тест:

1) Оформил новый заказ - email пришел и клиенту и админу (Правильно!);

2) Отредактировал через админку заказ - письма не приходят (ОТЛИЧНО!);

3) Открыл заказ, поменял статус с уведомлением клиенту - письмо пришло клиенту (Правильно!)

 

И так, если не нужна отправка дублирующего email клиенту и админу при редактировании заказа, то вот решение от  chukcha:

В файле catalog\model\checkout\order.php делаем следующие изменения:

686+-
 
//                            $mail->send();
if (!isset($this->session->data['api_id'])) $mail->send();
 
 
782 +-
 
 
791+-

Правда у меня на чистом ocStore-2.1.0.2.1 строки немного отличались: 686 +-; 780 +-; 788 +-

  • +1 3
Link to comment
Share on other sites


  • 1 month later...

Здравствуйте!

Сделал как у вас написано помогло. Покупателю на email перестал приходить  заказ. 

Но смс по прежнему приходят. 

Подскажите как их тоже отключить?

Link to comment
Share on other sites


Здравствуйте!

Сделал как у вас написано помогло. Покупателю на email перестал приходить  заказ. 

Но смс по прежнему приходят. 

Подскажите как их тоже отключить?

по аналогии там одельно есть функция по отправке СМС поместите ево в такоеже if условие

Link to comment
Share on other sites

chukcha, спасибо Вам за помощь (+1 к Карме). Такой Вариант работает.

Сделал следующий тест:

1) Оформил новый заказ - email пришел и клиенту и админу (Правильно!);

2) Отредактировал через админку заказ - письма не приходят (ОТЛИЧНО!);

3) Открыл заказ, поменял статус с уведомлением клиенту - письмо пришло клиенту (Правильно!)

И так, если не нужна отправка дублирующего email клиенту и админу при редактировании заказа, то вот решение от chukcha:

В файле catalog\model\checkout\order.php делаем следующие изменения:

686+- //                            $mail->send();if (!isset($this->session->data['api_id'])) $mail->send();  782 +-  791+-
Правда у меня на чистом ocStore-2.1.0.2.1 строки немного отличались: 686 +-; 780 +-; 788 +-
Не сработало на Opencart 2.1.0.2.1rs , изменил строки 680,780,790. Шаблон не стандартный, может где в шаблоне еще сидит. Нашел еще $mail->send(); в 840 строке комментирование не помогло Edited by Valliane
Link to comment
Share on other sites


  • 5 weeks later...

Здравствуйте!

Добрые люди, подскажите как отключить отправление СМС  по аналогии с письмом.

При редактировании заказа сайт отравляет смс покупателю...

А мне этого не надо.

Link to comment
Share on other sites


Проверял и думал нашел, сделал по аналогии с выше указанным  закоментил но так и не чего не вышло. 

Edited by Igor174
Link to comment
Share on other sites


  • 1 month later...

хм.. прикольно

 

686+-

 

//                            $mail->send();

if (!isset($this->session->data['api_id'])) $mail->send();

 

 

782 +-

 

 

791+-

 

 

Работает 100%

Спасибо, chukcha!

Link to comment
Share on other sites


  • 1 month later...
  • 6 months later...

На ocStore 2.1.0.2.1 отправляет теперь 2 письма, одно с заказом, второе со статусом сразу же. Кто сталкивался?

 

Link to comment
Share on other sites


  • 3 months later...

Добрый день.

Ребята, подскажите несведущему, пожалуйста. Описанный метод на ocStore 2.3.0.2.3 не работает, письма и дальше продолжают отправляться и клиенту и администратору при редактировании заказа. Есть ли альтернатива?

Link to comment
Share on other sites


  • 3 weeks later...
  • 3 weeks later...
В 20.11.2017 в 22:13, Vasia197 сказал:

Вроде на 2.3.0.2.3 работает, но после обновления модификаторов.

Работает, даже на нестандартном шаблоне!!!

Спасибо,  chukcha!

Link to comment
Share on other sites


  • 9 months later...

Спасибоchukcha! Больное место было:?

Сработало (пока вроде ттт) на 2.3.0.2.3, заменены строки 658, 747 и 755. Есть еще в строке 822, но там пока не трогала, посмотрим, как будет дальше.

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.