[msProducts] Как вывести товары у которых old_price больше чем price
Здравствуйте!
Ситуация следующая: 1С-ники выгружают цены на сайт таким образом, что, если у товара есть скидка, то актуальная цена выгружается в свойство товара price, а старая цена — в old_price. Но если у товара нет скидки, они выгружают в price и old_price одинаковые значения цен.
Вопрос: как сформулировать запрос к msProducts, чтобы он выводил только товары у которых old_price > price?
Заранее спасибо за подсказку
Ситуация следующая: 1С-ники выгружают цены на сайт таким образом, что, если у товара есть скидка, то актуальная цена выгружается в свойство товара price, а старая цена — в old_price. Но если у товара нет скидки, они выгружают в price и old_price одинаковые значения цен.
Вопрос: как сформулировать запрос к msProducts, чтобы он выводил только товары у которых old_price > price?
{'!msProducts' | snippet:[
'tpl' => 'tpl_products_listing',
'limit' => 30,
'parents' => 0,
'sortby' => 'RAND()',
'includeThumbs' => 'webp_m',
'where' => '[{ "Data.old_price:>":"Data.price" }, { "Data.internet_magazin":"1" }]'
]}Вот такая конструкция всё равно выводит любые товары. Или я вообще неправильно пытаюсь решить эту задачу? А как тогда надо?Заранее спасибо за подсказку
Комментарии: 9
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Но, поля расширены через доп — msAddField. Если же internet_magazin это твшка, опция, тогда надо по другому запрос переписать.
Вот запрос: Added where condition: class_key=msProduct, Data.old_price:>=Data.price,…
вот тут неправильно получается
а должно быть
Если поменять руками запрос в PHPMySql, то всё работает, но как сделать так, чтобы сниппет msProducts эту часть правильно генерил? Кстати, есть вообще документация как правильно прописывать в сниппете условие where? Только не с типичными примерами, а что-то посложнее типа того что у меня