acf_get_value()


acf_get_value()関数は、Advanced Custom Fields (ACF)プラグインでカスタムフィールドの値を取得するために使用されます。この関数を使うことで、特定の投稿やフィールドの値を簡単に取得できます。

シンタックス

acf_get_value( int|string $post_id, string $field_key )

引数の説明:

  • $post_id (int|string) — 値を取得する投稿またはページのID。投稿ID、オプションページの場合は'option'など。
  • $field_key (string) — 取得したいカスタムフィールドのキー。

例1: 投稿のカスタムフィールド値を取得

特定の投稿のカスタムフィールド値を取得します。

<?php
$field_value = acf_get_value( get_the_ID(), 'field_123abc' );
echo $field_value;
?>

例2: オプションページのフィールド値を取得

オプションページで設定されたフィールドの値を取得します。

<?php
$option_value = acf_get_value( 'option', 'field_456def' );
echo $option_value;
?>

例3: 条件付きで値を取得

値が空でない場合のみ取得して表示します。

<?php
$value = acf_get_value( get_the_ID(), 'field_789ghi' );
if ( ! empty( $value ) ) {
    echo $value;
}
?>

例4: ループ内でのフィールド値取得

ループ内で複数の投稿のフィールド値を取得します。

<?php
if ( have_posts() ) {
    while ( have_posts() ) {
        the_post();
        $value = acf_get_value( get_the_ID(), 'field_101jkl' );
        echo $value;
    }
}
?>

例5: カスタム投稿タイプのフィールド値取得

カスタム投稿タイプの特定フィールドを取得します。

<?php
$args = array( 'post_type' => 'custom_post_type', 'posts_per_page' => -1 );
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
        $query->the_post();
        $custom_field = acf_get_value( get_the_ID(), 'field_112mno' );
        echo $custom_field;
    }
    wp_reset_postdata();
}
?>

注意点

  • フィールドキーはfield_で始まる固有のキーを使用してください。
  • 値が取得できない場合はnullが返されることがあります。