Перестали приходить письма о заказах
Проблема в том, что перестали отправляться письма о заказе (в админке появляются, смс приходят). Думала дело было в непродленном домене, но его продлили, а письма так и не приходят.
Была ошибка: "[2017-02-12 07:47:44] (ERROR @ /index.php) [FormIt] Произошла ошибка при попытке отправить почту. Невозможно запустить функцию mail."
Проверила работу функции mail — работает.
Не знаю что еще можно сделать — подскажите, пожалуйста.
Версия MODX 2.4.2, minishop2 обновила до последней версии — 2.2.0.
Обновила до 2.5.4 — ничего не изменилось.
P.S. Решала аналогичный вопрос на другом сайте. Повезло со службой поддержки, которая более ответственно подошла к решению вопроса. Вот что мне ответили: «С нашей стороны отправка почты не блокируется. В данном случае сработало правило DMARC, (http://emailexpert.ru/novosti/mail-ru-uzhestochaet-trebovaniya-kak-teper-ne-popast-v-spam)»
Была ошибка: "[2017-02-12 07:47:44] (ERROR @ /index.php) [FormIt] Произошла ошибка при попытке отправить почту. Невозможно запустить функцию mail."
Проверила работу функции mail — работает.
Не знаю что еще можно сделать — подскажите, пожалуйста.
Версия MODX 2.4.2, minishop2 обновила до последней версии — 2.2.0.
Обновила до 2.5.4 — ничего не изменилось.
P.S. Решала аналогичный вопрос на другом сайте. Повезло со службой поддержки, которая более ответственно подошла к решению вопроса. Вот что мне ответили: «С нашей стороны отправка почты не блокируется. В данном случае сработало правило DMARC, (http://emailexpert.ru/novosti/mail-ru-uzhestochaet-trebovaniya-kak-teper-ne-popast-v-spam)»
Комментарии: 24
Если все работало до этого, а сейчас само по себе перестало — то с большой долей вероятности функцию mail отключил Ваш хостер. Обычно отключают из-за вирусной активности.
Отпишите хостеру, спросите в чем дело. А пока они будут отвечать — проверьте сайт на вирусы.
Отпишите хостеру, спросите в чем дело. А пока они будут отвечать — проверьте сайт на вирусы.
Спасибо за совет! Была такая идея — сходу не нашла как службе поддержки написать. Проверю.
Написала, ответили, что «При отправке тестового письма с вашего аккаунта, ошибок не зафиксировано.».
Я тоже проверяла простейшим скриптом — отправляет. Сегодня создала тестовую форму через AjaxForm письма также не приходят.
Что можно еще проверить?
Я тоже проверяла простейшим скриптом — отправляет. Сегодня создала тестовую форму через AjaxForm письма также не приходят.
Что можно еще проверить?
покажите вызов AjaxForm и саму форму
[[!AjaxForm?
&snippet=`FormIt`
&emailTpl=`email.tpl`
&form=`form.tpl`
&hooks=`email`
&emailSubject=`[[+fio]] хочет узнать стоимость обучения "[[*longtitle]]"`
&emailTo=`liebe.amore@gmail.com`
&validate=`mail:required:email,fio:required, phone:required`
&validationErrorMessage=`В форме содержатся ошибки!`
&successMessage=`Сообщение успешно отправлено!`
]]
Форма:<form action="[[~[[*id]]]]" method="post" class="ajax_form">
<div class="input"><input id="fio" type="text" name="fio" placeholder="Ваше имя">
<span class="error_fio">[[+fi.error.fio]]</span></div>
<div class="input"><input id="mail" type="email" name="mail" placeholder="Email">
<span class="error_mail">[[+fi.error.mail]]</span></div>
<div class="input"><input id="phone" type="text" name="phone" placeholder="Телефон">
<span class="error_phone">[[+fi.error.phone]]</span></div>
<input type="hidden" value="[[+pagetitle]]" name="pagetitle" id="pagetitle">
<input type="hidden" value="[[+tv.time]]" name="time" od="time">
<input type="hidden" value="[[+tv.teacher]]" name="teacher" id="teacher">
<button type="submit" class="btn btn-primary">[[%af_submit]]</button>
</form>
[[+fi.success:is=`1`:then=`
<div class="alert alert-success">[[+fi.successMessage]]</div>
`]]
[[+fi.validation_error:is=`1`:then=`
<div class="alert alert-danger">[[+fi.validation_error_message]]</div>
`]]
На другом сайте такая работает. При отправке этой также пишет, что сообщение успешно отправлено.
Попробуйте перенести параметр &hooks на второе место.
В самой форме у инпутов в id добавьте префикс af_. Чтобы получилось, например
В самой форме у инпутов в id добавьте префикс af_. Чтобы получилось, например
id="af_mail"
Прописала, пишет что отправлено, но письма нет…
Проверьте спам папку в вашем ящике. Может письма просто начали падать в спам…
Первым делом проверила… К сожалению, нет.
Попробуйте отправить письмо на другой ящик другого сервиса (mail.ru например). Может сам gmail.com блокирует письма, даже до спама не доходит. У меня такое было.
И это попробовала. Вообще с заказами должно приходить на mail.ru и на почту домена.
попробуйте использовать другую почту, без точки в адресе вашей почты.
Проверьте консоль. Может какой-то JS перебивает?
Сегодня ночью фиксил срочный заказ с подобным вопросом. Ну и чем черт не шутит, FormIt попробуйте переустановить. И вкладку SMTP в настройках проверьте.
UPD: проверьте на существование
Нет, я не шучу. Всякое бывает, иногда мелочи функционал убивает. Хотя казалось бы...
Сегодня ночью фиксил срочный заказ с подобным вопросом. Ну и чем черт не шутит, FormIt попробуйте переустановить. И вкладку SMTP в настройках проверьте.
UPD: проверьте на существование
&emailTpl=`email.tpl`
Нет, я не шучу. Всякое бывает, иногда мелочи функционал убивает. Хотя казалось бы...
К сожалению нет. Сам js сообщает что письмо отправлено успешно.
Проверила — есть, переустановила %) безуспешно. SMTP я не настраивала изначально.
Странно, что обычный php скрипт отправляет, а формы пишут что отправлено, но писем нет.
Проверила — есть, переустановила %) безуспешно. SMTP я не настраивала изначально.
Странно, что обычный php скрипт отправляет, а формы пишут что отправлено, но писем нет.
попробуйте сделать отправку просто через FormIt, будет ли отправлять?
Вот вроде простая форма, а не отправляется даже на другом, рабочем сайте…
[[!FormIt?
&hooks=`email,redirect`
&emailTpl=`email.tpl`
&emailTo=`liebe.amore@gmail.com`
&emailSubject=`Письмо с сайта`
&redirectTo=`1`
&validate=`name:required`
]]
[[!+fi.error_message:notempty=`<p>[[!+fi.error_message]]</p>`]]
<form action="/" method="post" class="form">
<label for="name">Ваше имя :</label>
<span class="error">[[!+fi.error.name]]</span>
<input type="text" name="name" id="name" value="[[!+fi.name]]" />
<label for="email">Email :</label>
<span class="error">[[!+fi.error.email]]</span>
<input type="text" name="email" id="email" value="[[!+fi.email]]" />
<input class="submit_button" type="submit" value="Отправить" />
</form>
[[!FormIt?
&hooks=`email`
&emailTpl=`email.tpl`
&emailTo=`liebe.amore@gmail.com`
&emailSubject=`Письмо с сайта`
]]
[[!+fi.error_message:notempty=`<p>[[!+fi.error_message]]</p>`]]
<form action="[[*uri]]" method="post" class="form">
<label for="name">Ваше имя:</label>
<span class="error">[[!+fi.error.name]]</span>
<input type="text" name="name" id="name" value="[[!+fi.name]]" />
<label for="email">Email:</label>
<span class="error">[[!+fi.error.email]]</span>
<input type="text" name="email" id="email" value="[[!+fi.email]]" />
<input class="submit_button" type="submit" value="Отправить" />
</form>
Вот так сработало!)) Только что тогда это значит?
Поменялся action только у form? Его вообще в принципе указывать не нужно. Правильный form выглядит как-то так (AjaxForm):
<form action="" method="post" class="ajax_form">
Вообще рекомендую свою форму сверить с той, которая при установке AjaxForm по дефолту создается (чанк tpl.AjaxForm.example)
Так я же проверяю работу Formit)
Еще бывает такое, что если почта-отправитель (та, что в параметре emailsender) является почтой @mail.ru, то при попытке отправить письмо на тот же ящик — тоже ничего не придет. Но это не в Вашем случае
Точно! action должен быть чист. По-крайней мере в tpl.AjaxForm.example экшн пустой.
&emailTo=`liebe.amore@gmail.com`
Почта Google оооочень капризна и кидает письма в спам по своим собственным, неизвестным науке, причинам.DKIM, SPF, PTR, DMARC — плевать на всё, кидаю в спам что хочу, законом не запрещено.
Так что я крайне советую настроить для отправки SMTP от Яндекс.
Главная проблема, что не отправляются заказы из minishop2. Может как-то по-другому надо тестировать отправку писем в этом случае? Эту форму я для тестирования сделала. А почты менеджеров одна на mail.ru, другая на почте домена (настроена почта для домена yandex.ru).
Ну и в спаме пусто. И ошибок больше нет про то что «Невозможно запустить функцию mail»
Ну и в спаме пусто. И ошибок больше нет про то что «Невозможно запустить функцию mail»
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.