Описание
Возвращает имя текущего макета строки в цикле have_rows().
Эта функция необходима при отображении значений поля Flexible Content, поскольку каждая строка может иметь свой тип макета.
Возвращаемое значение
(string) Имя макета, заданное в настройках поля Flexible Content.
Примеры
Базовое использование
В этом примере показано, как пройти в цикле по полю Flexible Content и получить макет каждой строки.
if( have_rows('content') ) {
while( have_rows('content') ) {
the_row();
// Получить макет строки.
$layout = get_row_layout();
// Выполнить действие...
}
}
Отображение макетов
В этом примере показано, как пройти в цикле по полю Flexible Content и сгенерировать HTML для разных макетов.
<?php if( have_rows('content') ): ?>
<?php while( have_rows('content') ): the_row(); ?>
<?php
// Макет абзаца.
if( get_row_layout() == 'paragraph' ): ?>
<?php the_sub_field('paragraph'); ?>
<?php
// Макет изображения.
elseif( get_row_layout() == 'image' ):
$image = get_sub_field('image');
?>
<figure>
<?php echo wp_get_attachment_image( $image['ID'], 'full' ); ?>
<figcaption><?php echo $image['caption']; ?></figcaption>
</figure>
<?php
// Записи.
elseif( get_row_layout() == 'posts' ):
$posts = get_sub_field('posts');
?>
<div class="featured-posts">
<h2><?php the_sub_field('title'); ?></h2>
<?php the_sub_field('content'); ?>
<?php if( posts ): ?>
<ul>
<?php foreach( $posts as $post ):
setup_postdata($post); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
<?php wp_reset_postdata(); ?>
</ul>
<?php endif; ?>
</div>
<?php endif; ?>
<?php endwhile; ?>
<?php endif; ?>
Обновлено: 30.09.2026