Фильтры ввода и вывода и price minishop2

Добрый день!

Прошу помощи и совета, в карточке товара хочу выводить условие, в зависимости от цены. Например, если цена больше или равна 10000, то выводим одно условие, если меньше, то другое.
Делаю это вот так:

[[!+price:gte=`10000`:then=`Доставим этот товар бесплатно!`:else=`Доставка от 250 рублей`]]
Но условия выводятся некорректно, что я делаю не так и как можно реализовать такую штуку?
Спасибо!
Victor
17 мая 2016, 09:29
modx.pro
1
3 578
0

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

Victor
18 мая 2016, 09:28
0
Никто не знает?
    Янис
    18 мая 2016, 09:40
    0
    Проверьте, всегда ли [[+price]] является числом. Это очень распространённая ошибка
      Victor
      18 мая 2016, 09:48
      0
      Да, всегда, причем странность заключается в том, что товарам дешевле 1000 показывается `Доставка от 250 рублей`, от 1000 до 9999 показывает `Доставим этот товар бесплатно!`, 10тыс до 11 тыс `Доставка от 250 рублей`, все что свыше 11тыс опять `Доставим этот товар бесплатно!`. Логика абсолютно мне не понятна) Хотя в фильтре проставлено больше или ровно 10000…
        lineharo
        18 августа 2018, 15:40
        0
        Видимо значения берутся как текст и сравниваются по первому символу.
        Привет, 2016!)
      Янис
      18 мая 2016, 09:55
      0
      Не видя вывода плэйсхолдера цены, тяжело сказать. Там точно нет никаких знаков группирования тысяч? Например пробел?
        Victor
        18 мая 2016, 10:38
        0
        Там 100% только цифры без пробелов и разделителей в виде точек или запятых, да и minishop2 не дает в поле цены вводить ничего кроме цифр в правильном формате. Весь мозг сломал, почему такая логика вывода получается
        Янис
        18 мая 2016, 10:48
        0
        Тогда только один вариант — свой писать сниппет.
          Янис
          18 мая 2016, 11:19
          0
          Насчет сниппета я поторопился. Идем в настройки системы-минишоп, там есть пункт о выводе цены (ms2_price_format), т.е. [[!+price]] не число, о чём я и говорил.
          Alexey T
          18 мая 2016, 14:40
          2
          +1
          Если fenom включен — то можно так
          {if $_modx->resource.price > '3499'}Бесплатно
          {else}Платно
          {/if}
            Victor
            18 мая 2016, 19:19
            0
            Спасибо! То что надо!
            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
            10