Доброго времени суток!
Мне необходимо вывести количество всех дочерних элементов каждого пункта меню.
С этим отлично справляется вот такой сниппет:
<?php
$count = 0;
$parent = isset($parent)? (integer) $parent: 0;
if ($parent > 0) {
$criteria = array(
'parent' => $parent,
'deleted' => false,
'published' => true,
);
$count = $modx->getCount('modResource', $criteria);
}
return (string) $count;
Проблема в том, что он считает только ближайшие дочерние ресурсы, но не учитывает те, которые находятся внутри них.
Буду очень рад если поможете мне с этим)
Посчитать количество всех дочерних ресурсов
Версия MODX: Все
Комментарии (5)
Для добавления комментариев вы должны авторизоваться или зарегистрироваться.
Воеводский Михаил 13.08.2015 03:13 #
2. Использовать pdoMenu, добавить в вызов параметр &countChildren. Не утверждаю, что он точно считает вложенные во вложенные. Проверьте, вдруг решит задачу.
Макс Дабосин 13.08.2015 12:52 #
pdoMenu наверно нецелесообразно будет использовать, т.к. на сайте сейчас везде wayfinder.
По первому пункту — мои знания в php близки к нулю, а слово «рекурсивный» ассоциируется с чем-то вроде адронного коллайдера. Если это не займет у вас много времени не могли бы вы доработать код сверху? Думаю это поможет нескольким «сниппетовым программистам».)
Павел Романов 13.08.2015 19:08 #
Ну и, к примеру:
Роман 24.05.2017 17:48 #
Anton Yakushew 09.01.2018 00:54 #
в критерию добавьте