Как задать счетчик итераций в цикле foreach в Fenom?

Друзья, помогите разобраться, изучаю Fenom и появилась задача, добавить счетчик. В доках есть пример.

{foreach $list as $value}
 <div>{$value}</div>
{/foreach}

{foreach 1..7 as $value} 
 <div>№{$value}</div>
{/foreach}
Но я не понимаю как он работает, хоть тресни.

Вот рабочий пример кода
{set $projects = 'pdoResources' | snippet : [
'return' => 'json',
'limit' => '3',
'includeTVs' => 'img',
'sortby' => ['publishedon' => 'desc'],
'where' => [
    'parent:=' => 55,
    'AND:published:=' => 1,
    'AND:hidemenu:=' => 0
]		
] | json_decode : true}
{foreach $projects as $item index=$index}
{$item.menutitle}-{$index}
{/foreach}
Пока пришлось использовать вариант index=$index но index начинается с 0, вычесть тоже никак не получается,
{$index -1} ошибка сразу.

Если пробую так, вкладывать foreach в foreach
{foreach $projects as $item}
{foreach 1..3 as $value} 
{$item.menutitle}-{$value}
{/foreach}
{/foreach}
То три раза дублирует записи.
ВОПРОС: Как в FENOM правильно сделать счетчик в цикле foreach который начинается с 1?
Роман
31 января 2020, 13:52
modx.pro
3 539
0

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

Андрей
31 января 2020, 14:18
1
0
Можно так:
{set $count = 0}
{foreach $rows as $idx => $row}
    {include ++$count}
    <p>{$row.fieldname} - {$count}</p>
{/foreach}
Или так:
{foreach $rows as $idx => $row}
    <p>{$row.fieldname} - {$idx + 1}</p>
{/foreach}
    Роман
    31 января 2020, 14:34
    0
    Спасибо, я пока нашел тег do, index убрал и сделал как у вас в первом примере классический счетчик
    только через тег do вместо include {do $count++}. А вот второй прикольно! Благодарю.

    Но все же не подскажите как это из доков можно применить?
    {foreach $list as $value}
     <div>{$value}</div>
    {/foreach}
    
    {foreach 1..7 as $value} {* так же хорошо работает и с интервалами *}
     <div>№{$value}</div>
    {/foreach}
    Артем
    31 января 2020, 15:04
    2
    +1
    {foreach $rows as $row}
        {$row@index + 1}
    {/foreach}
    или

    {foreach $rows as $row index=$index}
        {$index + 1}
    {/foreach}
      Роман
      31 января 2020, 15:09
      0
      Благодарю!
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        5