Как разделить ветки ресурсов в феноме?

Подскажите, пожалуйста, как можно отловить в феноме потомков ресурса.

{if $_modx->getParentIds == 11 }
  Фильтры для пылесосов
{else}
  Фильтры для вытяжек	
{/if}
При этом разделение на пылесосы и вытяжки может быть на любом неизвестном уровне (прыгают уровни) выше, известен только id предка.
Антон
11 сентября 2017, 20:45
modx.pro
844
0

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

Андрей
12 сентября 2017, 11:06
0
Если я правильно понял что должно быть, то можно так:

{'!pdoField' | snippet : [
	'topLevel' => 1,
	'field' => 'id',
	'toPlaceholder' => 'res'
]}
			
{if 'res' | placeholder == 11}	
    Фильтры для пылесосов
{else}
   Фильтры для вытяжек
{/if}

Где значение topLevel, это уровень от корня контекста.
    Василий Наумкин
    12 сентября 2017, 11:40
    2
    +4
    {var $ids = $_modx->getParentIds($_modx->resource.id)}
    {if '11' in list $ids}
      Фильтры для пылесосов
    {else}
      Фильтры для вытяжек	
    {/if}
    Код не проверял, но логика примерно такая: получить массив с родителями текущего ресурса и проверить, если ли среди них нужный.
      Антон
      12 сентября 2017, 21:48
      0
      То, что доктор прописал!
        Фарит
        Фарит
        20 мая 2020, 22:07
        0
        Сам 11 родитель не включается при таком запросе.
        Как бы и его включить?
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        4