Перейти к содержимому

Как добавить список товаров в email-рассылку

С помощью этого кода можно добавить в письмо список товаров: название, изображение, цена и ссылка на товар в магазине. Это полезно для напоминаний о популярных товарах или акциях.

Скопируйте этот код и вставьте в текст email-рассылки. В начале кода настройте нужные параметры:

{if $wa->shop}
{$products = $wa->shop->productSet("bestsellers")} {* метод получения списка товаров *}
{$domain = 'mydomain.ru'} {* замените на свой домен *}
{$route = '*'} {* замените на адрес витрины из раздела «Структура» приложения «Сайт» *}
{$image_size = '200'} {* размер изображений товаров в пикселях *}
{$currency = 'RUB'} {* валюта для отображения цены *}
{foreach $products as $product}
{$route_params = [
'product_url' => $product['url'],
'domain' => $domain,
'route' => $route
]}
{if (isset($product['category_url']))}
{$route_params['category_url'] = $product['category_url']}
{else}
{$route_params['category_url'] = ''}
{/if}
<p>
{strip}
<a href="{$wa->getUrl('shop/frontend/product', $route_params, true)}">
{if !empty($product.image_id)}
<img src="{$wa->shop->imgUrl([&#10; 'id' => $product['image_id'],&#10; 'product_id' => $product['id'],&#10; 'filename' => $product['image_filename'],&#10; 'ext' => $product['ext']&#10; ], $image_size, true)}"><br>
{/if}
{$product.name}
</a><br>
{shop_currency_html($product.price, $currency)}
{/strip}
</p>
{/foreach}
{/if}

Перед вставкой кода измените значения переменных в начале:

  • productSet("bestsellers") — какие товары показывать. Вместо «bestsellers» можно указать любой набор товаров, созданный в разделе «Товары → Наборы» в панели управления магазином.
  • $domain — домен вашего магазина (например, myshop.ru).
  • $route — адрес витрины. Найти его можно в приложении «Сайт» → раздел «Структура».
  • $image_size — размер изображений в пикселях (ширина).
  • $currency — код валюты для отображения цены (например, RUB, USD, EUR).