Событие msOnGetProductPrice установить old_price
У меня на сайте у товара цена может быть указана в разных валютах. На сайт выводится только цена в национальной валюте. Чтобы цена менялась в зависимости от валюты создал плагин:
Никто не сталкивался с такой проблемой??
case 'msOnGetProductPrice':
if ($modx->context->key == 'mgr') {return;}
if (!isset($modx->event->returnedValues['price'])) {
$modx->event->returnedValues['price'] = $price;
}
$price = & $modx->event->returnedValues['price'];
$currency = $modx->getOption('currency_' . strtolower($product->currency));
$price = ceil($price * $currency);
$product->set('price', $price);
$old_price = $product->old_price;
if(isset($old_price) && $old_price != 0){
$old_price = ceil($old_price * $currency);
$product->set('old_price', $old_price);
}
break;
Цена(price) меняется и в каталоге и на странице товара. А вот старая цена(old_price) меняется только на странице товара, а вот в каталоге НЕТ. Пробовал установить old_price в масиве $data — не помогает.Никто не сталкивался с такой проблемой??
Комментарии: 1
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.