Настройка писем в VirtueMart 3
- Информация о материале
- Категория: Virtuemart
- Опубликовано: 06.02.2018, 13:41
- Автор: HelpDesk
- Просмотров: 6584
Если с отправкой писем возникают проблемы, то первым делом нужно проверить общие настройки почты сайта в Система > Общие настройки > Сервер
Если тестовое письмо доходит, то проблема, скорее всего, в virtuemart. Если же не работает даже отправка тестовых писем, то нужно разбираться в общих настройках почты. Часто правильные настройки может подсказать техподдержка хостера.
Лучше использовать email на домене. Его можно подключить, например, с помощью Яндекса.
Настройка почты в Virtuemart
Virtuemart может отправлять письма в следующих ситуациях:
заказ и смена статуса заказа
поступление товара на склад
рекомендация товара
вопрос по товару
Каждый из случаев разберем отдельно. Начать, конечно, нужно с самого главного - писем покупателю и продавцу после оформлении заказа.
Настройки отправки писем находятся в Virtuemart > Настройки > Электронная почта.
Подробнее про каждую из опций.
Формат текстового сообщения - Текстовый или HTML-формат писем для уведомления о заказе. Как правило, используется HTML-формат. Шаблоны для каждого из форматов находятся в разных файлах. Подробнее об этом в следующей части, посвященной редактированию писем.
Использовать адрес эл.почты продавца - Использовать email пользователя, установленного в качестве продавца, или брать email из общих настроек joomla.
Invoice in user language - Счет на языке пользователя.
Статус заказа по умолчанию для создания выписанного счета - Статус заказа, при котором будет отправляется счет-фактура.
Статус заказа по умолчанию для отправки эл.письма покупателю - Смысл понятен из названия. Можно выбрать несколько статусов.
Статус заказа по умолчанию для отправки эл.письма продавцу - Аналогично предыдущей опции.
Общее почтовое вложение - К уведомлению о заказе для покупателя можно прикрепить медиа файлы, которые должны находиться в папке /images/stories/virtuemart/vendor/. Для прикрепления нескольких файлов укажите их через запятую.
Статус заказа при использовании вложений файлов - Прикрепляет файлы, указанные в предыдущей настройке.
Редактирование шаблона писем о заказе
Несколько лет подряд проблема редактирования шаблона писем о заказе успешно решалась с помощью Email Manager. К сожалению, поддержка компонента давно прекратилась и он уже не совместим с virtuemart 3.2.0 и выше.
В качестве альтернативы стандартному можно использовать платный готовый шаблон от olympianthemes.com, но и для его изменения необходимо править php файлы.
Разберем в общих чертах структуру стандартного шаблона писем, а на какие-то частные вопросы постараюсь ответить в комментариях.
Изменение темы писем
Текст темы писем настраивается в языковых файлах.
Для покупателя в файле /administrator/language/ru-RU/ru-RU.com_virtuemart.ini
Для продавца темы писем пока(virtuemart 3.2.1) не русифицированы и находятся в файле /components/com_virtuemart/language/en-GB/en-GB.com_virtuemart.ini
Для изменения лучше всего переопределить эти языковые константы в Расширения > Менеджер языков > Переопределение констант.
Последняя буква в имени константы соответствует статусу заказа. Посмотреть соответствие буквы и статуса можно в Virtuemart > Настройки > Статусы заказов.
В тексте вместо переменных подставляется соответственно:
%1$s - название магазина(в письме продавцу - имя покупателя)
%2$s - сумма заказа
%3$s - номер заказа
В итоге в файле с переопределенными языковыми константами /language/overrides/ru-RU.override.ini должно получится что-то вроде этого
Файлы шаблона писем
Шаблон писем, как и другие шаблоны virtuemart, лучше переопределить в папке шаблона сайта. Это позволит сохранить все изменения после обновления.
Все файлы, отвечающие за шаблон писем, находятся в папке /components/com_virtuemart/views/invoice/tmpl/. Все файлы, которые будут изменяться, нужно перенести в папку /templates/имя_шаблона/html/com_virtuemart/invoice/. Если такой папки нет, то создайте ее.
HTML-формат
За шаблон писем в этом формате отвечают файлы, имя которых содержит mail_html.
В файле mail_html.php задаются css стили письма и подключаются все необходимые файлы.
Шаблон непростой, поэтому остановлюсь только на основных моментах, которые смогут помочь при редактировании. Конкретные вопросы по редактированию можно задать в комментариях.
За вывод шапки письма отвечает файл mail_html_header.php. Выводит лого, информацию о магазине и приветствие для пользователя. Для продавца не используется.
За вывод информации о заказе для покупателя отвечает файл mail_html_shopper.php.
За вывод шапки письма для продавца отвечает файл mail_html_shopper.php.
Все последующие файлы используются как в письме покупателю, так и в письме продавцу.
За вывод контактной информации отвечает файл mail_html_shopperaddresses.php.
За вывод списка товаров в заказе отвечает файл mail_html_pricelist.php.
За вывод подвала отвечает файл mail_html_footer.php
Текстовый формат
Используется редко. Настраивается в файлах, имя которых содержит mail_raw.
Шаблон для продавца и покупателя одинаковый.
В файле mail_raw_shopper.php выводится информация о заказе.
В файле mail_raw_shopperaddresses.php выводятся контактные данные.
В файле mail_raw_pricelist.php выводится список товаров в заказе.
В файле mail_raw_footer.php выводится информация о магазине.
Р
едактирование шаблона
Ниже несколько примеров кода, которые могут пригодиться при редактировании стандартных шаблонов.
ЧПУ для ссылок в письме
В файле invoice_items.php заменить
на
Удалить иконки способов доставки/оплаты и разделить название и описание способа
В файле invoice_items.php заменить
на
и заменить
на
Ссылка в подвале на главную страницу магазина
В файле mail_html_footer.php заменить
на
Удалить описание магазина
В файле mail_html_footer.php удалить
Добавить вес каждого товара и итоговый вес всех товаров
Для добавления веса каждого товара в файле /components/com_virtuemart/views/invoice/tmpl/invoice_items.php после кода вывода названия товара
Добавьте
Для вывода суммарного веса всех товаров в том же файле перед
добавьте
После кода вывода веса товара добавьте
Перед кодом
Добавьте
Добавить изображение товара в письмо
Для показа изображения товара в письме в файле /components/com_virtuemart/views/invoice/tmpl/ перед выводом названия товара
Добавьте