Virtuemart не отправляет письма-уведомления о заказе.

Если ваш virtuemart не отправляет уведомления о создании заказа, изменении его статуса да и о регистрации вроде тоже если не отправляет, а вы уже попробовали и php mail и sendmail, и даже правили по совету разных людей разные файлы, а он все равно не отправляет, гад

… Значит он гад. Я тоже так сегодня думал полдня. Потом все же нашел ответ. Все оказалось, как всегда, проще пареной репы. Дело в том (что там происходит технически я недопонял, потом наверное осознаю), но где-то у хостера в настройках почты стоит некий спам-фильтр. Он сравнивает адрес хоста с которого было отправлено письмо и адрес указанный в качестве обратного в самом письме. Если они разные — сгружает все в спам и дальше не шлет. Гад.

А делов-то всего:

В настройках магазина (virtuemart->магазин->информация о магазине) в форме «контактная информация» надо поставить email совпадающий с вашим доменом.

Например: ваш сайт — http://pro-cop.ru — почту поставить надо su@pro-cop.ru или nessu@pro-cop.ru или как хотите. К сожалению и уведомления о заказах для админа будут идти на эту почту.

Ну а уж как завести ее и собрать потом с нее почту — это другая история. А Virtuemart вообще не при чем. Гад.

Метки: ,

Комментарии (21) на “Virtuemart не отправляет письма-уведомления о заказе.”

  1. А мне в этой ситуации помогло выставление в общих настройках: тип отправки почты — Sendmail

  2. qwer:

    не помогло. Уведомления админу так и не приходят.

  3. У меня настроено на gmail и тут одна проблема…
    если так: Адрес SMTP-сервера : ssl://smtp.gmail.com:465, то ходит почта от вертуемарт, но не ходит остальная (регистрация, рассылки и т.д.)
    А если так: Адрес SMTP-сервера : smtp.gmail.com, то ходит от сайта, но не ходит от вертуемарт… заказ, именение статуса и т.д.

    Что это за беда?

  4. admin:

    Честно говоря, хрен знает, сам нашел решение в каких-то дебрях. Как офигительный вариант — проверьте папку спам.

  5. admin:

    Черт!
    Ну… Главное, что Вы попытались…

  6. asd:

    У меня этот рецепт не сработал. При регистрации письма просто нет, вроде бы отправляет, но оно не приходит адресату. При обновлении статуса заказа Virtuemart выдает предупреждение — «Предупреждение: Невозможно отправить сообщение для Вася Пупкин, name@yandex.ru ()»
    Еще бы написал почему невозможно.

  7. Для решение этой проблемы достаточно изменить строчку в файле libraries/phpmailer/phpmailer.php
    $params = sprintf(«-oi -f %s», $this->Sender);
    на
    $params = »;

    И вопрос разработчику сайта: а где такую офигезную капчу взять? Поделись

  8. admin:

    Не проверял. Попробовать в любом случае стоит и так. Здесь я так понимаю, удаляют адрес отправителя из функции?
    Насчет капчи — http://wordpress.org/extend/plugins/wp-notcaptcha/
    http://notcaptcha.webjema.com/ — сайт автора, по-ходу

  9. А слона то мы и не заметили!!! Вернее заметили, но не думали что проблема в нём. Что только не пробовал — письма регистрации в магазине (их отправляет Joomla) доходят, а письма заказа (их отправляет Virt) — нет. И хостеру писали — в логах никто не блокируется. Всё вроде перекопали, та оказывается копали не там. Как я заметил из заказов в других интернет магазинах — не у всех хостеров есть такой фильтр, что означает — проблема не только может быть здесь, но этот момент исключать нельзя. У меня всё заработало! Но появились новые запросы — можно ли настроить, чтоб письмо с заказом приходило на несколько адресов (Joomla это делает, а Virt — только на один адрес).
    Огромное спасибо автору, мучался не часто, но долго и всё заработало!!! За капчу, отдельное спасибо!!!

  10. admin:

    Думаю, что можно. Честно говоря сейчас вирт не юзаю, негде посмотреть. Может попробовать ввести несколько адресов через запятую?

  11. шото не то отправляется
    на хостинге запрещено использование некторых дополнительных параметров для почтовой программы, функция mail не может отправить письмо, о чем честно сообщает в возвращаемом результате, а VirtueMart безразлично ушло письмо или нет.
    Для решение этой проблемы достаточно изменить выше указанную строчку в файле «libraries/phpmailer/phpmailer.php» на

    закрываем ету строку на всякий случай
    // $params = sprintf(‘-oi -f %s’, $this->Sender);
    под ней пишем следующее

    $params = »;
    PS это не кавычки а апостроф э в английском раскладе два раза

  12. У меня была проблема — подтверждение клиенту приходит, а письмо заказа — нет. Почта корпоративная настроена на gmail.

    В моем случае причина была в том, что на хостинге был создан почтовый домен, и вся почта через виртумарт шла на него (ящиков в нем не было, поэтому она просто удалялась).

    Решением было удалить почтовый домен :)

  13. LazyCat:

    Адрес, указанный в настройках магазина, должен полностью совпадать с адресом, с которого идёт рассылка писем. У меня по-другому не сработало.

  14. Дмитрий:

    Мучился с почтой очень долго. Перечитал все посты об этой проблеме.

    В моём случае помогло следующее: Заполнил все настройки SMTP в Общих настройках Joomla и переключился на SMTP сервер как рекомендовали. Однако при отправлении подтверждения из админки Virtuemart появлялось сообщение о том что невозможно отправить почту.
    Затем просто переключился на Php Mail function (настройки SMTP не удалял) и о чудо! Все заработало!

    Надеюсь кому-то поможет ибо сам намучился ;)

  15. Поменял «Способ отправки почты» в админке Joomla, потом вернул назад — и все заработало…

  16. Helen:

    СПАСИБО!!!! помогло пол дня билась об стену)))))

  17. Роман:

    Надо зайти в админке virtuemart -> Настройки -> Оформление заказа
    И в «Статус заказа по умолчанию для отправки эл.письма покупателю» добавить «В ожидании»
    Тоже самое сделать и в «Статус заказа по умолчанию для отправки эл.письма продавцу»

    После добавления «В ожидании», письма отправляются сразу после подтверждения заказа в корзине.

  18. Сергей:

    Сделал как описывал ТС — письма не приходили, но при заказе стали появляться сообщения — не найден пользователь с ID таким-то, и «Нужно указать хотя бы одного получателя e-mail». Создал вторую учетку суперадмина, присвоил через базу ID, который VM (или Joomla) не мог найти — все заработало. Спасибо, ТС. Возможно, если бы не эта статья я бы и не нашел проблему

  19. Евгений:

    «Надо зайти в админке virtuemart -> Настройки -> Оформление заказа
    И в «Статус заказа по умолчанию для отправки эл.письма покупателю» добавить «В ожидании»» спасибо, Руслан. Помогло.

  20. Алекс:

    Мне тоже помогло
    «Надо зайти в админке virtuemart -> Настройки -> Оформление заказа
    И в «Статус заказа по умолчанию для отправки эл.письма покупателю» ))

  21. Иван:

    Спасибо друг! Сегодня снова актуально, в связи с введением спам фильтра на mail.ru

Добавить комментарий

Перед отправкой формы:
Human test by Not Captcha