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

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

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

Кирилл
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
        Спасибо, давно уж дело было. Так и сделал.
          Евгений Дубровин
          06 февраля 2019, 12:43
          0
          всем здравствуйте!
          а может кто-то подсказать, как вывести связанные товары не в карточке товара, а в корзине (на странице оформления заказа)? ну т.е. если в корзине несколько товаров, то все связанные с ними.
            Евгений Дубровин
            07 февраля 2019, 16:48
            0
            оказывается всё просто.
            вот примерно как это делается (может кому пригодиться):
            <h4>Вам также могут понадобиться</h4>
            			{foreach $products as $product}
            	[[msProducts?
            		&parents=`0`
            		&link=`4`
            		&master=`{$product.id}`
            		&limit=`0`
            		&tpl=`productRel`
            		&tplWrapper=``
            		&wrapIfEmpty=`0`
            	]]	
            	{/foreach}
            &link=`4` — номер связи
            &tpl=`productRel` — шаблон вывода.
              Сергей
              27 июля 2019, 16:08
              0
              Делаю связку с выбором цвета, нужно чтобы просто скрывало если нету связей, но что то не получилось) вызов твой не запустился тупо
            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
            11