get_row_index()

Описание

Возвращает индекс текущей строки в цикле 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