Глеб

Глеб

Был в сети 08 января 2026, 15:11
Заказы принимаю
Т.е дефолтное поле «количество товара» не трогаем, используем значения в поле «count» 10,20,30 (см).

А на странице «Корзины» получаем плагином цену товара и делим её на 100?

На какое событие нужно писать плагин?
Плагином нужно менять стоимость товара? или стоимость заказа?
вызов в чанке
{'@FILE snippets/discountPercent.php' | snippet : [
  'price' => $price,
  'old_price' => $old_price
]}
discountPercent.php
<?
$price = empty($price) ? 0 : str_replace(' ', '', $price);
$old_price = empty($old_price) ? 0 : str_replace(' ', '', $old_price);

if($old_price > 0){
  $percent = ceil(100 - ($price * 100 / $old_price));
  return '-'.$percent.'%';
} 
return '';
нет, тоже самое
в журнале ошибок следующее:
[2018-09-13 08:44:48] (ERROR @ /home/site/web/test.ru/public_html/core/components/pdotools/model/pdotools/pdofetch.class.php : 573) [pdoTools] Could not join TVs to the class "ecMessage" that is not a subclass of the "modResource". Try to specify correct class in the "joinTVsTo" parameter.
я так понимаю нужно использовать leftJoin?
пока реализовал костылем, вот так

{'!pdoResources' | snippet : [
  'tplFirst' => '@INLINE <ul data-key="{$album}"><li>./assets/gallery/{$filename}</li>',
  'tpl' => '@INLINE 
    {if $rank == 0}
      </ul><ul data-key="{$album}">
    {/if}
    <li>./assets/gallery/{$filename}</li>
  ',
  'sortby' => '{"album":"ASC","rank":"ASC"}',
  'class' => 'galAlbumItem',
  'loadModels' => 'gallery',
  'limit' => '99',
  'select' => '{
    "galAlbumItem": "*",
    "galItem": "*"
  }',
  'leftJoin' => '{
    "galItem":{"class":"galItem", "on":"galItem.id = galAlbumItem.item"}
  }',
]}
</ul>