Shop-Script 3: Редактируем шаблон уведомительного письма

В письме-уведомлении, покупателю приходит практически вся информация о его заказе. Однако, стандартный шаблон уведомления всё же недостаточно информативен — по крайней мере ссылок на заказанный товар он не содержит.
В этой статье даётся несколько вариантов решения этой проблемы.

Первый вариант предложен на форуме Shop Script, но стоит отметить сразу, что он довольно громоздкий и несколько сложнее в исполнении, чем второй. Чтобы не описывать его полностью, вот ссылка на источник. Если вкратце, суть описанного метода в том, чтобы редактируя переменные php-файле и сам шаблон письма, добиться вывода ссылки на товар в корзине магазина.
Но этот способ имеет несколько существенных недостатков. Например, уже при добавлении к товарам артикула, ссылка генерируется неверно и перестает работать. Кроме того, в ряде случаев (нестандартная корзина, хитрые настройки платформы и пр.) потребуется дополнительная доработка кода.

Чем проще система, тем она надёжнее, а потому ниже, я опишу свой способ решения проблемы с минимумом усилий и более надёжным вариантом работы.
Как же сделать так, чтобы название товара в письме, было ссылкой на этот товар?

Редактируем файл order_notification.txt Находится он в published/SC/html/scripts/templates/email/
Открываем, и вместо кода

{$content[i].name|escape:'html'} (x{$content[i].Quantity}): {$content[i].Price}
</span> <span style="mso-ansi-language: EN-US;" lang="EN-US">

вставляем код

<a href="http://{$smarty.server.HTTP_HOST}{"?ukey=search&amp;searchstring=&#96;$content[i].name&#96;"|set_query}"&gt;{$content[i].name|escape:'html'}&lt;/a&gt; </span> <span style="mso-ansi-language: EN-US;" lang="EN-US">(x{$content[i].Quantity}): {$content[i].Price}</span> <span style="mso-ansi-language: EN-US;" lang="EN-US">

Сохраняем, проверяем результат.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

восемь − семь =