msProducts как выводить товары на других страницах
Интересуют следующие вопросы:
1) Как с помощью msProducts вывести товары из категории на другой странице.
2) Как сделать фильтр хотя бы по одному TV/
3) Как сделать фильтр по параметрам продукта (цвет, размер… и.т.д.)
Такие опции для getPage не работают…
1) Как с помощью msProducts вывести товары из категории на другой странице.
2) Как сделать фильтр хотя бы по одному TV/
3) Как сделать фильтр по параметрам продукта (цвет, размер… и.т.д.)
[[!getPage? &element=`msProducts` &parents=`7` ]]
[[!+page.nav]]
Такие опции для getPage не работают…
Комментарии: 43
4) Сортировка по параметрам и tv
1. Параметр parents
2. Будет в новой версии
3. Параметр where
4. Параметр sortby, сортировка по ТВ будет в новой версии.
Новая версия выходит завтра.
2. Будет в новой версии
3. Параметр where
4. Параметр sortby, сортировка по ТВ будет в новой версии.
Новая версия выходит завтра.
Спасибо за ответ.
Но по традиции у меня не работает — parents :) Указываю id категории, ничего не выводит…
А про where можно чуть подробнее? пример кода?
Новая версия это просто отлично! Она обновится или придется ставить заново?
Но по традиции у меня не работает — parents :) Указываю id категории, ничего не выводит…
А про where можно чуть подробнее? пример кода?
Новая версия это просто отлично! Она обновится или придется ставить заново?
1) Работает parents, спасибо!
Where, кажется, не будет работать.
Завтра посмотрю и поправлю.
Завтра посмотрю и поправлю.
спасибо, ждем
Посмотрел, параметр &where=`` должен работать, нужно указывать json как у getResources.
Ок, буду пробовать! Когда релиз будет?
Сегодня — завтра.
подскажите плиз, можно ли как то делать выборку по полям таблицы ms2_products?
Это условие работает нормально &where=`{«pagetitle:LIKE»:"%black%"}` а вот это нет &where=`{«new:=»:1}`
Это условие работает нормально &where=`{«pagetitle:LIKE»:"%black%"}` а вот это нет &where=`{«new:=»:1}`
Таблицы джойнятся под псевдонимами, поэтому указывать нужно так:
&where=`{"Data.new":1}`
Василий, ждем релиза. когда же уже обрадуете :)
После обновления до rc1, выборка через &where, к сожалению, перестала работать… Также почему-то параметр &parents перестал работать после обновления и теперь тянет все все документы из дерева.
Починил, обновись еще раз.
Работает, спасибо!
Василий, а как в новой версии работают фильтры по TV?
[[!msProducts?
&includeTVs=`mytv`
&where=`{"TVmytv.value:LIKE":"%строка%"}`
]]
Это вместо getPage? а будет ли постраничная навигация тогда?
Все работает и с getPage :) Все очень круто!
У меня у одного перестал работать parents?
Скачай обновленную версию, была такая проблема — Василий вчера исправил, уже работает.
[[!getPage? &element=`msProducts` &parents=`7` ]]
[[!+page.nav]]
не хочет работать, установил rc4…
У меня у одного так, да? :(
Да, у тебя у одного.
Только что проверил на minishop2.com — нормально работает.
Только что проверил на minishop2.com — нормально работает.
Эх… ну чтож у меня на этот раз… :( Может плохо обновилось? Работало же до релиза…
Включи вывод лога и посмотри какой запрос формируется.
[[!getPage?
&element=`msProducts`
&parents=`7`
&showLog=`1`
]]
Магия :) вставил ваш запрос вместо того что привел выше — все работает :)
Спасибо!
Спасибо!
Скорее всего, у тебя там где-нить пробел затесался, или русская буква.
Доброго времени суток Василий!
Вопрос по аналогии с автором. Есть необходимость вывести товар на главную страницу целиком, со всеми полями.
Пробовал с pdoResource, не вышло, пробовал и через msProducts напрямую, в данный момент товар выводится вот так:
В результате выходит ошибка:
и не подхватываются значения цвета и размера(вместо них такая же ошибка)
Как подключить msProduct class к странице?( или есть ли какой другой способ вывести один товар полностью на главную?
Вопрос по аналогии с автором. Есть необходимость вывести товар на главную страницу целиком, со всеми полями.
Пробовал с pdoResource, не вышло, пробовал и через msProducts напрямую, в данный момент товар выводится вот так:
[[!msProducts? &parents=`40` &limit=`1` &tpl=`msGoldProductFirstPage.content` &includeContent=`1`]]
msGoldProductFirstPage.content — копия стандартного чанка msProduct.content с небольшими изменениямиВ результате выходит ошибка:
This resource is not instance of msProduct class.
и не подхватываются значения цвета и размера(вместо них такая же ошибка)
Как подключить msProduct class к странице?( или есть ли какой другой способ вывести один товар полностью на главную?
указывайте значение product в сниппете joxi.ru/AWEkVIwyTJBUYmyQVjk
Спасибо — помогло, только значение
из словаря не подхватывается, а выводится как есть «ms2_product_price» но это я и в шаблоне поправлю.
ms2_product_price
из словаря не подхватывается, а выводится как есть «ms2_product_price» но это я и в шаблоне поправлю.
Обнаружилась новая проблема:
теперь все товары имеют те же размеры и цвета, что и указанный в msOptions — product даже если эти поля не пустые
теперь все товары имеют те же размеры и цвета, что и указанный в msOptions — product даже если эти поля не пустые
чего?
указал id Товара в параметра msOptions.
У данного товара поля size и color заполнены, но значения этих полей отображаются и у остальных товаров, в том числе тех, у которых их вообще не должно быть.
У данного товара поля size и color заполнены, но значения этих полей отображаются и у остальных товаров, в том числе тех, у которых их вообще не должно быть.
похоже на кеш, попробуйте вызвать msOptions некешированным…
Видимо я вас изначально не правильно понял.
Значение в сниппете изменяет значение по умолчанию для всех товаров. Следовательно реакция магазина на смену была правильной.(одинаковые поля у всех товаров как у товара заданного по умолчанию)
А помогло собственно следующее:
В категории товара(товар у нас там лежит один, так как он особенный, и категория эта указана как главная страница) мы выводим все товары этой категории
А что бы доп поля показывались на главной в опциях цвета и размера добавляем параметр product — id Товара из которого этот параметр выводится.
Значение в сниппете изменяет значение по умолчанию для всех товаров. Следовательно реакция магазина на смену была правильной.(одинаковые поля у всех товаров как у товара заданного по умолчанию)
А помогло собственно следующее:
В категории товара(товар у нас там лежит один, так как он особенный, и категория эта указана как главная страница) мы выводим все товары этой категории
[[!msProducts? &parents=`40` &limit=`1` &tpl=`шаблон продукта` &includeContent=`1`]]
шаблон продукта — не что иное как копия msProduct.content с незначительными изменениями(ну мало ли что понадобится на главной дополнительно вывести или скрыть)А что бы доп поля показывались на главной в опциях цвета и размера добавляем параметр product — id Товара из которого этот параметр выводится.
[[!msOptions?name=`color` &product=`18`]]
И все начинает работать.
Спасибо огромное что отписались. Ваш ответ помог в другом проблемке с msOptions
Подскажите как сортировать по параметрам товара, например по размеру?
у товара есть значение: «размер 36, размер 37, размер 38», нужно вывести через pdoPage товары с значением «размер 36»
у товара есть значение: «размер 36, размер 37, размер 38», нужно вывести через pdoPage товары с значением «размер 36»
&where=`{"size:=":размер 36}`
не выводит
Попробуй msProductOption.size.
Да и с кавычками в запросе у тебя беда.
Да и с кавычками в запросе у тебя беда.
вот вызов целиком, с кавычками тоже не выводит
[[!pdoPage?
&element=`msProducts`
&tpl=`catalog-item`
&fastMode=`0`
&parents=`34`
&includeThumbs=`250х0`
&includeContent=`1`
&where=`{"msProductOption.size:=":"размер 36"}` ]]
вывел с помощью сниппета выбора товаров по опциям https://bezumkin.ru/modx/minishop2/solutions/1160/
Скажите, а решилось ставить условие where на size через стандартный снипет msProducts?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.