WordPress ACF の関連フィールドの表示方法

WordPress ACF の関連フィールドの表示方法を紹介します。
例えば、Advanced Custom Fields の関連を使って、おすすめ記事一覧を表示したい時に便利な方法です。

  1. ACF 関連フィールドの表示方法
  2. 戻り値の形式が投稿IDの場合

ACF 関連フィールドの表示方法

ACF 関連フィールドの表示方法を紹介します。
例えば、関連フィールドを使用している固定ページから、選択した投稿(またはカスタム投稿)一覧を表示するには、次のコードを固定ページのテンプレートに追加します。

登録オブジェクトが単一の場合

<?php // 関連フィールドの表示
$relation_object = get_field('ホゲホゲ');
if( $post_object ):
?>
<a href="<?php echo get_permalink($post_objects->ID); // ID指定でリンクを取得 ?>">
<?php echo get_the_title($post_objects->ID); //タイトルの取得 ?>
</a>
<?php endif; ?>

フィールド名「ホゲホゲ」は任意の値に変更してください。
紹介したコードは、返り値のフォーマットが「投稿オブジェクト」の場合の表示方法です。

表示している固定ページと関係ないテンプレートで表示する場合は、フィールド名の後にページIDを指定してください。
詳しくは「Advanced Custom Fields の取得・表示方法」をご覧ください。

登録オブジェクトが複数の場合

<?php // 関連フィールドの表示
$relation_objects = get_field('ホゲホゲ');
if( $relation_objects ):
?>
<ul>
<?php foreach( $relation_objects as $relation_object): // ループの開始 ?>
<li>
<a href="<?php echo get_permalink($relation_object->ID); // ID指定でリンクを取得 ?>">
<?php echo get_the_title($relation_object->ID); // ID指定でタイトルの取得 ?>
</a>
</li>
<?php endforeach; // ループの終了 ?>
</ul>
<?php endif; ?>

フィールド名「ホゲホゲ」は任意の値に変更してください。
紹介したコードは、返り値のフォーマットが「投稿オブジェクト」の場合の表示方法です。

表示している固定ページと関係ないテンプレートで表示する場合は、フィールド名の後にページIDを指定してください。
詳しくは「Advanced Custom Fields の取得・表示方法」をご覧ください。

戻り値の形式が投稿IDの場合

戻り値の形式が投稿IDの場合は、出力の値を次のようにしてください。

<?php echo $relation_object; // 投稿ID ?>

まとめ

WordPress ACF の関連フィールドの表示方法を紹介しました。