Вывод бонусных баллов на карточке товара
Если в магазине подключена бонусная (партнёрская) программа, покупателю полезно видеть, сколько бонусных баллов он получит за покупку конкретного товара. Эту информацию можно вывести прямо на карточке товара.
Как работает бонусная программа
Заголовок раздела «Как работает бонусная программа»В Shop-Script бонусные баллы начисляются на основе коэффициента конвертации (affiliate_credit_rate) — он задаётся в настройках партнёрской программы (Магазин → Маркетинг → Партнёрская программа). Коэффициент определяет, сколько единиц валюты нужно потратить, чтобы получить 1 бонусный балл.
Например, если коэффициент равен 100, то за каждые 100 рублей покупки начисляется 1 балл.
Откройте файл product.html вашей темы дизайна:
wa-data/public/shop/themes/<ваша_тема>/product.htmlДобавьте следующий код в нужное место карточки товара (например, рядом с ценой):
{$credit_rate = $wa->shop->settings('affiliate_credit_rate')}{if $credit_rate > 0} {$product_price = shop_currency($product.price, null, null, 0)} {$product_affiliate_bonus = $product_price / $credit_rate}
<div class="s-product-affiliate-bonus"> Этот товар добавит <span class="bold">+{round($product_affiliate_bonus, 2)}</span> баллов к вашему бонусному счёту! </div>{/if}Что делает код
Заголовок раздела «Что делает код»$wa->shop->settings('affiliate_credit_rate')— получает коэффициент конвертации из настроек партнёрской программы.shop_currency($product.price, null, null, 0)— возвращает цену товара в текущей валюте в числовом формате (без символа валюты).- Деление цены на коэффициент — вычисляет количество бонусных баллов за покупку товара.
round(..., 2)— округляет результат до двух знаков после запятой.
Проверка {if $credit_rate > 0} гарантирует, что блок не отобразится, если бонусная программа отключена или коэффициент не задан.
Стилизация
Заголовок раздела «Стилизация»Добавьте стили в файл user.css вашей темы:
.s-product-affiliate-bonus { margin: 10px 0; padding: 8px 12px; background: #f0f7f0; border-radius: 6px; font-size: 14px; color: #333;}
.s-product-affiliate-bonus .bold { font-weight: 700; color: #2e7d32;}Вывод в каталоге
Заголовок раздела «Вывод в каталоге»Аналогичный код можно добавить и в файлы списков товаров (list-thumbs.html, list-table.html), заменив $product на $p:
{$credit_rate = $wa->shop->settings('affiliate_credit_rate')}{if $credit_rate > 0} {$p_price = shop_currency($p.price, null, null, 0)} {$p_bonus = $p_price / $credit_rate}
<div class="s-product-affiliate-bonus"> +{round($p_bonus, 2)} баллов </div>{/if}