столкнулся со следующей загвоздкой
мне нужно чтобы : при загрузке страницы корневого уровня загружалось В , но если у нее нет детей загружалось А(что в принципе и реализовано в нижнем примере)
[+phx:if=`[[ChildCounter? &docid=`[*id*]` &depth=`1`]]`:is=`0`:then=`A`:else=`B`+]
Но столкнулся с проблемой:
При переходе на нижний уровень папки с В сценарием, я снова получаю А (так как детей у конечной страницы нет то условие :is=`0`:then=`A` выполняется.
Вопрос:
как определить на каком уровне я нахожусь и если на корневом и дочерних документов нет, тогда А в других случаях В или если проще как сделать так
[+phx:if=`[[ChildCounter? &docid=`[*id*]` &depth=`1`]]`:is=`0`and if=`[[UltimateParent? &id=`[*id*]`]]`:is=`[*id*]`:then=`A`:else=`B`+]
расшифровка:
если количество дочерних документов текущего документа=0 и если id родителя=id текущего (т.е. текущий документ есть корневое звено) то А иначе В
Добавить в первое условие parent=`0` ?
Discere ne cesses
Столкнулся абсолютно с такой же проблемой и толкового решения пока не нашел. Может кто подскажет, как подобное можно реализовать?
Опишите, какая конечная цель этой задачи? Может, найдётся какое-то другое решение.
Спасибо, проблема решилась просто, создал дополнительные шаблоны.
-
☆ A M B ☆
- 276 Posts
Дык есть параметр isfolder
который как раз показывает есть ли в документе дочерние документы
вот его и проверяйте, зачем считать количество дочерних документов если можно просто проверит папка или нет ?