Как добавить список товаров в 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([ 'id' => $product['image_id'], 'product_id' => $product['id'], 'filename' => $product['image_filename'], 'ext' => $product['ext'] ], $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).