Как вывести родителей ресурса (категории товаров)?

Привет, в ms2 есть вкладка у товара, называется «категории»

Как бы на странице ресурса (товара) вывести список всех категорий в которых он находится? Спасибо.

Спасибо за ответ Евгений Webinmd
Сниппет выводит все вложенные категории товара в виде ссылок.
<?php
if (empty($rid)) {$rid = $modx->resource->id;}
if (empty($pid)) {$pid = $modx->resource->parent;}
if (empty($delimeter)) {$delimeter = ' , ';}
$scheme = $modx->getOption('link_tag_scheme', null, 'full', true);

$q = $modx->newQuery('msCategory');
$q->leftJoin('msCategoryMember', 'msCategoryMember', array(
    '`msCategory`.`id` = `msCategoryMember`.`category_id`'
));
$q->sortby('pagetitle','ASC');
$q->groupby('id');
$q->select(array('id','pagetitle'));
$q->where('`msCategoryMember`.`product_id` = '.$rid.' OR `id` = '.$pid);

$result = array();
if ($q->prepare() && $q->stmt->execute()) {
    while ($row = $q->stmt->fetch(PDO::FETCH_ASSOC)) {
        $url = $modx->makeUrl($row['id'], '', '', $scheme);
        $result[] = '<a href="'.$url.'">'.$row['pagetitle'].'</a>';
    }
}
return implode($delimeter, $result);
Jazz
15 апреля 2020, 15:00
modx.pro
574
0

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

Артем
15 апреля 2020, 20:18
+1
    Jazz
    16 апреля 2020, 12:10
    0
    Спасибо, естественно пробовала таким способом одним из первых, выводит только одного «физического» родителя.
      Aleksandr Huz
      15 апреля 2020, 23:01
      0
      Только это не выведет категории, которые не являются родителями товара.
        Евгений Webinmd
        15 апреля 2020, 23:05
        0
        так вам вывести всех родителей (как в дереве) или категории товара?
        Категории как в примере из документации
        Родителей можно сниппетом pdoCrumbs, там есть 2 параметра, from/to
        построите цепочку по сути всех родителей
          Aleksandr Huz
          15 апреля 2020, 23:19
          0
          Я не автор поста)) Автор не так сформулировал свой вопрос, поэтому я и написал, что ваш вариант не подойдет.

          Из скрина видно, что родитель товара — Категории. А Вложенная Категория не является родителем, но отмечена и поэтому ваш вариант не подходит.
          Aleksandr Huz
          15 апреля 2020, 23:19
          0
          Извиняюсь, я промахнулся. Вы дали правильную ссылку. Это @Артем написал про getParentIds
        Jazz
        16 апреля 2020, 12:16
        0
        Спасибо, именно то что искала. Не сказать что документация очевидна, при наличии раздела «Категории» и раздела «Товар» с пунктом «Категории» в описании MS2 искать в разделе «Полезные выборки» не самая первая мысль, гугл ответов не находил, а основные доки по ms2 были прочитаны по несколько раз. Еще раз спасибо.
          iWatchYouFromAfar
          16 апреля 2020, 17:04
          0
          Документацию пишут такие же люди как и вы. Если вы считаете что она плохо в чем-то или где-то написана, вы всегда можете это исправить.
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        10