Загвоздка в msCart
Здравствуйте. Хочу в корзине выводить цену товара, количество и стоимость, то есть каждому товару соответствуют 3 значения. Однако не могу получить полную стоимость нескольких штук таким логичным способом [[+price:mpy=`[[+count]]`]]. Суть в том, что в виде [[+price]] система отдает здесь только верхнюю тысячу разряда числа, то есть, если товар стоит 2300, то это 2, и для двух товаров значение получается без малого 4 рубля. Понимаю, что это происходит из-за форматирования цены (минишоп ставит пробел между тысячами), отказаться от форматирования также не готов. Подскажите лаконичное решение, вы же его знаете.
Комментарии: 4
Нудно сделать свой простенький сниппет и использовать его как фильтр вывода.
В задачи сниппета будет входить убирание лишних пробелов и перемножение цены на количество.
Вот ссылка на то, как делаются фильтры вывода (это обычный сниппет, принимающий $input и $options).
В задачи сниппета будет входить убирание лишних пробелов и перемножение цены на количество.
Вот ссылка на то, как делаются фильтры вывода (это обычный сниппет, принимающий $input и $options).
Спасибо. Теперь лично познал преимущества платной подписки)
На здоровье!
Чтобы не быть в числе тех авторов, которые пишут «Нашел решение, всем спасибо!» и исчезают, выкладываю этот самый простенький сниппет. Ценности с точки зрения разработки в нём мало, но всё же может кому-то поможет. Вызывать в виде [[+price:snippet=`[[+count]]`]], snippet — естественно, имя вашего сниппета.
<?php
$price = $input;
$price = str_replace(' ', '', $price);
$out = $price * $options;
$out = number_format($out, 0, '', ' ');
return $out;
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.