Описание
Поле Relationship предоставляет двухколоночный компонент для выбора одной или нескольких записей, страниц или элементов произвольного типа записи, а также элементы управления поиском и фильтрацией по типу записи и таксономии, которые помогают находить нужные результаты.
Скриншоты
Настройки
Фильтрация по типу записи
Фильтрует доступные для выбора результаты по типу записи. Если оставить поле пустым, отображаются все типы записей. Результаты группируются по типу записи, поэтому выбранные типы записей можно расположить в определённом порядке.Фильтрация по статусу записи
Фильтрует доступные для выбора результаты по статусу, например «Опубликовано» или «Черновик». Если оставить поле пустым, отображаются записи с любым статусом.Фильтрация по таксономии
Фильтрует доступные для выбора результаты по одному или нескольким терминам таксономии.Фильтры
Определяет, какие фильтры отображаются в компоненте. Можно выбрать «Поиск», «Тип записи» и/или «Таксономия».Формат возвращаемого значения
Определяет формат возвращаемого значения. Можно выбрать объект записи (WP_Post) или ID записи (целое число).Обязательное поле
Находится на вкладке «Валидация». Требует ввести значение и не позволяет сохранить поле пустым. По умолчанию отключено.Минимальное количество записей
Устанавливает минимальное количество обязательных записей.Максимальное количество записей
Устанавливает максимальное количество разрешённых записей.Инструкции
Отображает инструкции при вводе данных.Элементы
Определяет, какие элементы отображаются для каждого результата. Можно выбрать «Изображение записи».Условная логика
Включение этой настройки позволяет настроить логику, определяющую, должно ли отображаться текущее поле. Можно создавать группы правил условной логики для поддержки нескольких условий с операторами «и»/«или».Двунаправленная связь
Находится на вкладке «Дополнительно». Включение этой настройки позволяет обновлять значение в целевых полях для каждого значения, выбранного в этом поле, добавляя или удаляя ID записи, ID таксономии или ID пользователя обновляемого элемента. Дополнительную информацию об использовании этой настройки для создания двунаправленных связей непосредственно в интерфейсе ACF см. в разделе «Двунаправленные связи».
Использование в шаблоне
Поле Relationship возвращает массив элементов, каждый из которых является объектом WP_Post или целочисленным значением — в зависимости от выбранного формата возвращаемого значения.
Вывод списка записей (с setup_postdata)
В этом примере показано, как перебрать значение объекта записи и вывести список ссылок. Здесь используется специальная функция setup_postdata(), позволяющая применять функции шаблонов WordPress. В этом примере для поля выбран формат возвращаемого значения «Объект записи», и поле поддерживает несколько значений.
<?php
$featured_posts = get_field('featured_posts');
if( $featured_posts ): ?>
<ul>
<?php foreach( $featured_posts as $post ):
// Настраиваем эту запись для функций WP (переменная должна называться $post).
setup_postdata($post); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<span>Произвольное поле этой записи: <?php the_field( 'field_name' ); ?></span>
</li>
<?php endforeach; ?>
</ul>
<?php
// Сбрасываем глобальный объект записи, чтобы остальная часть страницы работала корректно.
wp_reset_postdata(); ?>
<?php endif; ?>
Вывод списка записей (без setup_postdata)
В этом примере показано, как перебрать значение объекта записи и вывести список ссылок. Здесь глобальная переменная записи не изменяется, поэтому всем функциям, связанным с «записью», требуется второй параметр, указывающий нужный объект. В этом примере для поля выбран формат возвращаемого значения «Объект записи», и поле поддерживает несколько значений.
<?php
$featured_posts = get_field('featured_posts');
if( $featured_posts ): ?>
<ul>
<?php foreach( $featured_posts as $featured_post ):
$permalink = get_permalink( $featured_post->ID );
$title = get_the_title( $featured_post->ID );
$custom_field = get_field( 'field_name', $featured_post->ID );
?>
<li>
<a href="<?php echo esc_url( $permalink ); ?>"><?php echo esc_html( $title ); ?></a>
<span>Произвольное поле этой записи: <?php echo esc_html( $custom_field ); ?></span>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
Примечания
Настройка
Поле Relationship содержит фильтры для настройки отображаемых записей и отображаемого текста для каждой записи.
Обратный запрос
Можно выполнить обратный запрос для записи (записи A), чтобы найти все записи (записи B, C), которые выбрали её (запись A). Дополнительную информацию об обратном запросе см. в подробном руководстве.
Обновлено: 30.09.2026

