miniShop2 Товары с ценой больше 1000 добавляются в корзину по 1 рублю

Добрый вечер! Помогите решить проблему, есть интернет магазин на miniShop2 по доставке и продаже пиццы и суши, если товар стоит меньше 1000 рублей он добавляется в корзину с нормальной ценой, если товар стоит больше 1000 рублей он добавляется в корзину по цене 1 рубль. В чем может быть проблема? Сайт sushiokinava.ru/naboryi/
Денис
27 октября 2019, 18:59
modx.pro
865
0

Комментарии: 6

Костромин Игорь
27 октября 2019, 22:28
0
Быстрее всего написан плагин при добавлении в корзину с условием и переопределением цены
    Николай
    27 октября 2019, 22:46
    +1
    Где-то в чанке походу используется параметр price, который при выводе имеет формат, допустим, 3 450, то есть с пробелом. Если привести такую строку в число то должно получиться 3. Короче, нужно очистить пробел
      Александр Мельник
      27 октября 2019, 23:12
      +1
      Проблема в пробеле в стоимости, как и сказал Николай.
      Вот в этой строчке
      <input type="hidden" name="options[price]" value="1 578">
      Стоит даже через редактор в браузере убрать пробел, как корзину попадает правильное число.

      Странно, всегда считал что при клике на добавить в корзину передается только айдишник товара, впервые вижу чтобы была стоимость прописана в скрытом поле.
        Евгений Webinmd
        28 октября 2019, 10:22
        0
        это что-то самописное для доп опций, по умолчанию такого нет
          Денис
          28 октября 2019, 13:15
          0
          Спасибо да проблема в этом, не подскажете где искать, как убрать пробел из числа?
            ElenaLelo
            28 октября 2019, 14:53
            0
            В value стоит плейсхолдер [[+price]], можете через консоль переписать у всех товаров цену, через xpdo получаете все ресурсы, получаете прайс, применяете number_format, сохраняете новый прайс.
            А можете создать свой модфикатор для вывода, например, назовем newformat:
            <?php
            $result = $input; //получем значение
            $result = str_replace(' ', '', $result) //без пробелов
            return $result;
            и соответственно вызов [[+price:newformat]]
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        6