get_field_objects()


WordPressのget_field_objects()関数は、指定された投稿、ページ、またはカスタムフィールドの全てのフィールド情報を連想配列として取得します。

シンタックス

get_field_objects( int|string $post_id = null, bool $format_value = true );

引数の説明

  • $post_id (int|string) — 投稿またはページのID。デフォルトでは現在の投稿が使用されます。
  • $format_value (bool) — 値をフォーマットするかどうかを指定します。デフォルトはtrueです。

例1: 投稿のすべてのカスタムフィールドを取得する

この例では現在の投稿に関連するすべてのカスタムフィールドを取得します。

<?php $fields = get_field_objects(); ?>

例2: 特定の投稿IDのカスタムフィールドを取得する

投稿IDを指定して、その投稿に関連付けられたカスタムフィールドを取得します。

<?php $fields = get_field_objects( get_the_ID() ); ?>

例3: フォーマットを無効にした値の取得

フォーマット済みの値を取得したくない場合は、$format_valuefalseに設定します。

<?php $fields = get_field_objects( null, false ); ?>

例4: フィールド値のループ表示

取得したフィールドの値をループして表示します。

<?php
$fields = get_field_objects();
if ( $fields ) {
    foreach ( $fields as $field_name => $field ) {
        echo $field['label'] . ': ' . $field['value'] . '<br>';
    }
}
?>

例5: 特定のカスタムフィールド値を取得

特定のカスタムフィールド値を取得し、利用する例です。

<?php
$fields = get_field_objects();
if ( isset( $fields['my_custom_field'] ) ) {
    echo $fields['my_custom_field']['value'];
}
?>

注意事項

get_field_objects()を使用するにはAdvanced Custom Fields (ACF)プラグインがインストールされ、有効化されている必要があります。プラグインが有効でない場合、この関数は正常に動作しません。


関連機能: