Вывод одновременно категорий и списка товаров по ним

Здравствуйте!
Как вывести список всех товаров — знаю.
Как вывести список всех категорий — тоже.
Не понимаю, как вывести на одной странице и категории и товары в них, вида:

Категория 1
Товар1
Товар2
Товар3
Категория 2
Товар4
Товар5
Товар6
Категория 3
Товар1
Товар4

В Категория 3 — товары Товар1 и Товар4 — ранее присутствовали в других категориях.
Как я понимаю, нужно сделать SQL-запрос с выборкой по двум таблицам — Категории и Товары.
Большая просьба подсказать КУДА КОПАТЬ.

P.S.
Пример на странице bezumkin.ru/sections/tips_and_tricks/2058/ не работает
Игорь
03 декабря 2021, 21:36
modx.pro
695
0

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

Артур Шевченко
04 декабря 2021, 11:29
0
Я бы сделал выборку категорий, а потом выборку товаров, пройдясь в цикле по первой выборке.
    Александр Мельник
    04 декабря 2021, 12:36
    0
    А что мешает в tpl которая выводит одну категорию вызвать msProducts и передать ему идентификатор этой категории?
      Артур Шевченко
      04 декабря 2021, 18:22
      0
      В этом случае подтянутся все товары, а не только те, у которых эта категория является основной, и если выводить все категории, то товары будут дублироваться. Значит надо либо через pdoResourсes выводить товары, но тогда нужно при соединить таблицу со свойствами товаров, либо свой сниппет писать.
      Александр Мельник
      04 декабря 2021, 19:08
      0
      Я наверное не совсем понимаю, чего хочет Игорь, у него в тексте нет конкретной задачи. Я понял так, что он спрашивает как на одной странице вывести и категории и товары в них. Плюс намекает, что у него есть товары, которые созданы в одной категории, но через возможности minishop2 привязаны к другой категории (товар 1 создан внутри Категории 1, но галочкой добавлен и в Категория3). Если вопрос в том, как это все отобразить на одной странице, то мне кажется должно сработать следующее
      Вызов pdoResources, который будет отображать категории товаров, например указав в where шаблон категории товаров. В tpl например выводится название категории а потом вызывается msProducts куда в качестве родителя передан id категории.
        Артур Шевченко
        04 декабря 2021, 21:01
        0
        Вызов pdoResources, который будет отображать категории товаров, например указав в where шаблон категории товаров. В tpl например выводится название категории а потом вызывается msProducts куда в качестве родителя передан id категории.
        Это будет работать, но по-моему msProducts автоматом собирает все товары которые принадлежат к определенной категории, т.е. если у Товара 1 основная Категория 1, и дополнительная Категория 2, а у Товара 2 только одна Категория 2, то выводя товары Категории 1 и Категории 2 на одной страницы получим
        Категория 1 — Товар 1,
        Категория 2 — Товар 1, Товар 2.
        Я тоже задачу до конца не понял, но мне кажется что Игорь хочет чтобы дублирования товаров не было)))
          Игорь
          04 декабря 2021, 23:24
          0
          Вызов pdoResources, который будет отображать категории товаров, например указав в where шаблон категории товаров. В tpl например выводится название категории а потом вызывается msProducts куда в качестве родителя передан id категории.
          Спасибо, так и сделал!
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          6