Движок отправляет письмо на @example.com


#1

тестирую заказы
при создании и оформлении заказа получаю письмо на почту магазина, а также приходит от хостинга письмо что не удалось доставить почту на test-1571053865@example.com

что это за тестовая почта и откуда она взялась? как убрать


Сделать настройку, меняющую через админку емейл-заглушку @example.com
#2

Так работает ядро с необязательным полем почты в чекауте. Если при оформлении заказа не указать почту, то в заказе сгенерируется фейковая.


#3

я понимаю но зачем слать сообщение на левую почту тогда ? чтобы хостинг в ответ генерировал сообщение что почта недоставлена…


#4

решили проблему в итоге?) добрался до нее, а то мне тоже хостинг сыпет этим


#5

да как то перестало нам приходить такое, видимо клиенты не делают ошибки в почте ну или cs-cart что то обновил)


#6

Как-то через панель администратора можно изменить, на какую почту создавать покупателя, который не указал явно свой емейл? удобно было бы, например, чтобы аккаунт был вида номер_телефона@домен_сайта.


#7

нет , но генерация происходит в функции fn_checkout_generate_fake_email_address, и там есть хук через который это можно сделать , небольшой доработкой , если будете делать не забудьте к этой функции fn_checkout_is_email_address_fake тоже подключиться там идет проверка на фейковые почты


#8

а по теме можно попробовать подключиться к хуку send_order_notification в fn_order_notification

и сделать нечто подобное

use Tygh\Enum\UserTypes;
fn_my_changes_send_order_notification($order_info, $edp_data, &$force_notification, $notified, $send_order_notification)
{
    if( fn_checkout_is_email_address_fake($order_info['email']))
    {
        $force_notification[UserTypes::CUSTOMER] = false;
    }
}

#9

Была такая проблема, это решается обязательным вводом Email для покупателя.


#10

Логично, ведь этот костыль был придуман чтобы что-то сообразить для случаев когда у покупателя нет email и надо дать ему оформить заказ. Но т.к. когда-то кто-то не предусмотрительно сделал именно email уникальным признаком пользователя, то теперь вот это и получается.


#11

Вопрос не в нет email, а в таких как я, кто терпеть не может спам. Если я делаю разовый заказ я всегда стараюсь указывать минимум данных, если закажу еще, можно всегда попросить подцепить на тебя заказы, обычно это легко (если там не cs-cart)


#12

Я делал так.
Открываете файл app/functions/fn.cart.php.
В строке 10381 $domain = ‘example.com’; меняем example.com на свой почтовый домен.Например, $domain = ‘mail.ru’;
Затем в строке 10383 $local_part = fn_generate_name(implode(’ ', $name_parts)); меняем fn_generate_name(implode(’ ', $name_parts)); на название вашей почты до знака @. Например, $local_part = ‘moya-pochta’.


Хорошая тема. Любые вопросы по CS-Cart и не только
#13

Как бы еще сделать, чтобы левые емейлы не отображались в PDF-счете, который незарегистрированный покупатель может скачать сразу после оформления заказа по ссылке “Детали заказа”?