Как изменить название магазина в сообщениях клиентам?

Автор realmen80, 01 февраля 2012, 15:20:33

« назад - далее »

realmen80

Здравствуйте.
В настройках престы, в разделе "Контактная информация" есть поле "Название магазина" где у меня указано название магазина и несколько ключевых слов.

Проблема заключается в том, что по умолчанию это же название используется и тогда, когда клиенту отправляются информационные письма. И получается не очень хорошее зрелище, когда на почту приходит магазин+ключевые слова.

Что нужно сделать для того, чтобы клиент получал сообщения и в поле от кого было бы просто название магазина? Можно ли сделать такое разделение и если да то где нужно рыть?
Смотрел в папке mails в корне сайта, но там не нашел в шаблонах у меня нет названия магазина.

Виктор Демидов

#1
Mail::Send((int)Configuration::get('PS_LANG_DEFAULT'), ...., array(...)..., dirname(__FILE__).'/mails/');
Шаблоны писем находяться в папке:
/mails/язык_используемый_в_магазине/
Шаблон письма, который испольуется  при рассылки:
/mails/ru/newsletter.html
/mails/ru/newsletter.txt

Например, /mails/ru/newsletter.txt
Информационное письмо от {shop_name}
Сообщение
{message}
{shop_url}

{shop_name} - имя вашего магазина.
Некоторые модули prestashop используют свой шаблон для письма, для них нужно искать шаблоны в паке модуля.

Версия prestashop какая ?

realmen80

Здравствуйте.
Спасибо за ответы. Но к сожалению решения проблемы так и не нашел. Версия у меня 1.3.1.1.
Шаблоны которые Вы написали - я нашел. В них все поменял. Вот к примеру какой сейчас у меня шаблон password.txt:

Здравствуйте, {firstname} {lastname},

Ваш новый логин и пароль для авторизации:
E-mail: {email}
Пароль: {passwd}

С уважением, магазин shop.ru.


Когда я нажал восстановить пароль и зашел в почтовый ящик свой, то в графе от кого в письме написано все название магазина, которое указано в настройках престы, в разделе "Контактная информация" в поле "Название магазина":
"Ключевое слово 1. Ключевое слово 2. Ключевое слово 3. Ключевое слово 4. Ключевое слово 5 <info@shop.ru>"
Вот именно это мне и нужно изменить. Чтобы когда клиент получает письмо то в этой графе было указано, к примеру:
Самый лучший магазин - shop.ru.
Вопрос остается открытым....

Виктор Демидов

Попробуйте отредактировать письма через админку:
Панель управления -> Инстументы -> Перевод
Изменить перевод
Выбрать : Перевод шаблонов эл.писем

Отредактируйте шаблоны. Поставьте текст вместо переменных.
Вместо {shop_name} - "Самый лучший магазин - shop.ru"

realmen80

Здравствуйте.
К сожалению у меня в админке по адресу Панель управления -> Инстументы -> Перевод нет такого пункта, как "Перевод шаблонов эл.писем" (см. вложение).

Проблема остается открытой. Версия у меня 1.3.1.1.

Виктор Демидов


mAgency

#6
Цитата: realmen80
Смотрел в папке mails в корне сайта, но там не нашел в шаблонах у меня нет названия магазина.
Во всех шаблонах писем

/mails/....все языки, что используются
/modules/... все модули, которые рассылают письма

убрать - {shop_name} и поставить название магазина - "Мой магазин".
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.

realmen80

Виктор Демидов, а какие права должны быть? У меня сейчас на mails - 755.
mAgency, в mails  - все давно уже поменял. А в /modules/ какие модули рассылают письма?
Заранее благодарен за помощь.

Виктор Демидов

#8
Попробуйте CHMOD 777

Пример щаблона письма можете показать, который вы используете ?
Из папки  - /mails/ru/...

realmen80

Я уже поставил CHMOD 777 - результат тот же.
Просто файлы которые находятся в /mails/ru/... - они отвечают за содержимое письма, а мне нужно изменить поля "От кого" и "Тема письма". Именно в этих полях приходит набор ключевых слов которые прописаны в названии магазина в разделе "Контактная информация" в поле "Название магазина".

Вот примеры шаблона:
order_merchant_comment.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Сообщение от Интернет-магазина ХХХ</title>
</head>
<body>
<table style="font-family:Verdana,sans-serif; font-size:11px; color:#374953; width: 550px;">
<tr>
<td align="left">
<a href="http://ХХХ.ru" title="Интернет-магазин - ХХХ"><img alt="Интернет-магазин - ХХХ" src="{shop_logo}" style="border:none;" ></a> </td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td align="left">Здравствуйте, <strong style="color:#DB3484;">{firstname} {lastname}</strong>,</td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td align="left" style="background-color:#DB3484; color:#FFF; font-size: 12px; font-weight:bold; padding: 0.5em 1em;">Вам отправлено новое сообщение относительно Вашего заказа №{id_order}:</td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td align="left">
<b></b>
<br>
{message}
</td>
</tr>
<tr><td>&nbsp;</td></tr>
<tr>
<td align="center" style="font-size:10px; border-top: 1px solid #D9DADE;">
<a href="http://ХХХ.ru" style="color:#DB3484; font-weight:bold; text-decoration:none;">Интернет-магазин "XXX"</a></td>
</tr>
</table>
</body>
</html>


и order_merchant_comment.txt
Сообщение от магазина ХХХ!

Здравствуйте, {firstname} {lastname},

Вы получили новое сообщение относительно заказа №{id_order}:
{message}

С уважением, магазин ХХХ.ru


realmen80

Кстати в админке, в разделе "Контактная информация" под полем "Название магазина" так и написано:
"Будет показано в заголовках страниц и в эл. сообщениях". Вот мне и нужно сделать чтобы я поменял для сообщений название магазина на другое, короткое - отличающееся от того длинного, которое написано в админке.


Виталий

Цитата: Виктор Демидов
Mail::Send((int)Configuration::get('PS_LANG_DEFAULT'), ...., array(...)..., dirname(__FILE__).'/mails/');
Поле "От кого" изменить с помощью шаблонов нельзя. Шаблоны писем - это "тело" сообщения.
Вы можете поменять значение поля "от кого" в функции Send() класса Mail.
class Mail
{
static public function Send($id_lang, $template, $subject, $templateVars, $to, $toName = NULL, $from = NULL, $fromName = NULL, $fileAttachment = NULL, $modeSMTP = NULL, $templatePath = _PS_MAIL_DIR_)
{
$configuration = Configuration::getMultiple(array('PS_SHOP_EMAIL', 'PS_MAIL_METHOD', 'PS_MAIL_SERVER', 'PS_MAIL_USER', 'PS_MAIL_PASSWD', 'PS_SHOP_NAME', 'PS_MAIL_SMTP_ENCRYPTION', 'PS_MAIL_SMTP_PORT', 'PS_MAIL_METHOD', 'PS_MAIL_TYPE'));
if(!isset($configuration['PS_MAIL_SMTP_ENCRYPTION'])) $configuration['PS_MAIL_SMTP_ENCRYPTION'] = "off";
if(!isset($configuration['PS_MAIL_SMTP_PORT'])) $configuration['PS_MAIL_SMTP_PORT'] = "default";

if (!isset($from)) $from = $configuration['PS_SHOP_EMAIL'];
if (!isset($fromName)) $fromName = $configuration['PS_SHOP_NAME'];
...........................

Замените
$fromName = $configuration['PS_SHOP_NAME'];
на
$fromName = 'то что вам нужно';

Служебная информация (такая как поля "от кого", "тема" ...) меняется в function Send() класса Mail.
Cоздание интернет сайтов Webstudio UwK

PrestaMan

Можно вообще убрать название магазина из "от кого". Поправить файлы :

  • /tools/swift/Swift/Message.php
  • /tools/swift/Swift.php
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!

realmen80

#13
 Виталий, спасибо за столь подробный ответ. Решение находится там где вы указали.
С полем «От кого» - вопрос решен.

Подскажите, пожалуйста, что нужно менять чтобы тему письма сменить ?
Сейчас приходит такая тема:
[Название магазина из набора ключевых слов] Новое сообщение относящееся к вашему заказу №...

А мне нужно чтобы в теме не выводилось название магазина, а только:
«Новое сообщение относящееся к вашему заказу 35».

Заранее благодарен за ответ.

mAgency

Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.