Пример вывода связанных товаров.

Хочу сделать, что бы на странице товара ниже выводился список товаров «Сопутствующие товары» Создала соответствующую связь товаров — один ко многим. Не нашла нигде примера как вывести список сопутствующих товаров на странице. Подскажите пожалуйста.
Кефирка
03 апреля 2017, 09:44
2 050
0

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

Кирилл
03 апреля 2017, 14:24
0
msProducts параметры называются master и slave.
Дмитрий Суворов
03 апреля 2017, 14:29
0
Если не нашли, значит очень плохо искали:
docs.modx.pro/components/minishop2/snippets/msproducts#Параметры

За управление связей отвечают параметры link, master, slave

А тут вообще подробно:
docs.modx.pro/components/minishop2/interface/settings#Связи-товаров
    Кефирка
    03 апреля 2017, 14:35
    0
    Это я нашла, и читала, но не хватает знаний и опыта понять, как это применить. У каждого товара могут быть свои связи. Там вывод только тех, кто связаны связью 1 с главным товаром 15. Не создавать же каждому товару свой шаблон. Снипет я создала, но не нашла примера как его использовать. Мне нужен пример, что бы понять как работает и под себя подогнать. Ну вот только на примерах понимаю :(
      Дмитрий Суворов
      03 апреля 2017, 14:48
      0
      Связью 1 — это значит что связью под id 1. Т.е. Вы создали связь в настройках, например назвали ее «Сопутствующие товары» — у этой связи есть ID, вот его нужно указать в параметр link. И нужно указать параметр master — текущий ID товара, к которому привязаны другие.

      [[!msProducts?
      	&parents=`0`
      	&link=`1`
      	&master=`[[*id]]`
      ]]
        Кефирка
        03 апреля 2017, 14:55
        0
        Спасибо! Теперь кажется все понятным и простым, даже обидно что сама не догадалась.
Ник
02 мая 2018, 09:00
0
Подскажите, как сделать условие для вывода связанных товаров? Никак не могу решить вопрос.
Суть — если они есть — выводим, нет — не выводим.
Я использую связи для вывода похожих товаров, и у этого модуля есть чанк обертка. Если связанных товаров нет, то этот чанк все равно выводится. Смотрится это некрасиво, поэтому хочу сделать условие.
Пробовал выложить результат выборки в плейсхолдер и через модификаторы отображать результат с условием если количество выборки не равно 0. Но похоже в msProducts не работает параметр &totalVar.
Помогите, пожалуйста. Вот мой код на странице товара:
[[!msProducts?
        	    &tpl=`tpl.section_NEW`
            	&parents=`0`
            	&link=`2`
            	&master=`[[*id]]`
            	&toPlaceholder=`like`
            	&totalVar=`count_c1`
            ]]
            [[!+count_c1:ne=``:then=`
<div class="row">
    <div class="related-products-wrapper count_and_button">
        <h2 class="related-products-title">Похожие товары</h2>
        <div class="related-products-carousel">
            [[+like]]
            <div class="clearfix count_and_button"></div>
        </div>
    </div>
</div>
            `]]
    Андрей
    22 сентября 2018, 12:25
    0
    Попробуйте вот так:
    [[!msProducts?
            &tpl=`tpl.section_NEW`
            &parents=`0`
            &link=`2`
            &master=`[[*id]]`
            &wrapIfEmpty=`0`
            &tplWrapper=`@INLINE
                <div class="row">
                    <div class="related-products-wrapper count_and_button">
                        <h2 class="related-products-title">Похожие товары</h2>
                        <div class="related-products-carousel">
                            [[+output]]
                            <div class="clearfix count_and_button"></div>
                        </div>
                    </div>
                </div>
            `
        ]]
Ник
23 сентября 2018, 15:04
0
Спасибо, давно уж дело было. Так и сделал.