Описание
Возвращает индекс текущей строки в цикле have_rows().
При переборе строк поля Repeater или Flexible Content может потребоваться определить номер строки (индекс). Эта функция делает именно это, устраняя необходимость в пользовательском счётчике $i++.
Возвращаемое значение
(int) Числовой индекс текущей строки. См. примечания об смещении индекса.
История изменений
- Добавлена в версии 5.3.4
Пример
В этом примере показано, как использовать функцию для вывода уникальных идентификаторов в обёртку каждой строки. Это удобно для настройки CSS и JavaScript.
<?php if( have_rows('slides') ): ?>
<?php while( have_rows('slides') ): the_row(); ?>
<div class="accordion" id="accordion-<?php echo get_row_index(); ?>">
<h3><?php the_sub_field('title'); ?></h3>
<?php the_sub_field('text'); ?>
</div>
<?php endwhile; ?>
<?php endif; ?>
<div class="accordion" id="accordion-1">
<h3>Мой первый аккордеон</h3>
<p>Здесь находится текст.</p>
</div>
<div class="accordion" id="accordion-2">
<h3>Мой второй аккордеон</h3>
<p>Здесь находится ещё немного текста.</p>
</div>
<br/>## Примечания
### Смещение индекса
Индекс, возвращаемый этой функцией, начинается с 1. Это означает, что поле Repeater с 3 строками данных создаст индексы 1, 2 и 3.
Чтобы начать отсчёт индексов с 0, используйте настройку [row_index_offset](https://www.advancedcustomfields.com/resources/acf-settings/) следующим образом.
#### functions.php
add_filter('acf/settings/row_index_offset', '__return_zero');
Обновлено: 30.09.2026